Ho una sottoclasse di UITextView e vorrei impostarlo come se fosse un suo delegato. In modo che io possa ignorare il metodo textView:shouldChangeTextInRange:replacementText:
e impedire l'inserimento di spazi consecutivi.UITextView come proprio delegato significa loop infinito
In [SATextView awakeFromNib]
(SATextView è la mia sottoclasse di UITextView), faccio [self setDelegate:self];
. Quando premo sul textview per iniziare a modificare tutto si blocca e alla fine si arresta, e quel backtrace mostra che c'è stato un ciclo infinito.
Non importa se implemento tutti i metodi delegati, solo uno o nessuno. Né importa se quei metodi sono vuoti.
Perché questo causa un ciclo infinito? Sembra solo che accada se con UITextView (altri oggetti è possibile creare sottoclasse e impostare il delegato su se stesso, e non avrà questo problema). E come posso fermarlo? O c'è un modo migliore per avere questa sottoclasse non in grado di avere spazi consecutivi,
Pensaci. Difficile. È possibile avere una classe come delegata, ma richiede pensiero. –
@HotLicks Ho pensato a questo proposito, l'ho fatto con altre classi senza problemi? Puoi aiutare? –
Il backtrace dovrebbe mostrarti il ciclo in cui ti trovi. –