2

私は次のことをしています:

 self.firstNameTextField.delegate = self.firstNameTextField;

MyfirstNameTextFieldはカスタム テキスト フィールドです。カスタム テキスト フィールドですべてのデリゲート イベントを処理したいと考えています。上記を実行すると、次の警告が表示されます。

互換性のないタイプから id を割り当てていUITextFieldます。

この警告は何に関するもので、どうすれば削除できますか?

4

2 に答える 2

5

カスタムUITextFieldクラスは、UITextFieldDelegateプロトコルに準拠していることを示す必要があります。

@interface MyCustomTextField : UITextField <UITextFieldDelegate>

また、firstNameTextFieldプロパティが次のように宣言されていることを確認してください。

@property (nonatomic) MyCustomTextField *firstNameTextField;
于 2013-05-22T20:04:05.433 に答える
2

UITextFieldDelegate問題は、カスタム クラスがプロトコルに準拠していないことだと思います。

このように宣言に追加する必要があります

@interface MyController : NSObject <UITextFieldDelegate> 
于 2013-05-22T20:06:02.880 に答える