を実装するクラスを作成したUITextFieldDelegate
ので、使用[MyDelegateClass setDelegate:textField someConfigparams:...]
するために使用するだけで済みます。その中にオブジェクトを作成し、に割り当てますtextFieldDelegate
。
解放時に問題が発生します。setDelegate
メソッドUITextField
はオブジェクトを保持しないため、自動解放することはできません。参照を外部に保持して解放することもできますが、デリゲート クラスの外部で追加の作業を行う必要があるため、見苦しく、エラーが発生しやすくなります。UITextField
他のサブクラスと競合する可能性があるこのサブクラスを常に使用する必要があるため、サブクラス化は悪いオプションです。
UITextField
MyDelegateClass の外部のコードに依存せずに、オブジェクトが破棄されたときにデリゲート オブジェクトを解放する方法はありますか?