2011-10-24 9 views
0

私はxCode 4.3を使用していますが、これは変です。私はきちんと私のUITextFieldを初期化してきたが、私はIBActionでそれを呼び出すとき、それは私があなたの財産をすることにiboutletを持つべきだと思う私>保存されたオブジェクトのEXEC_BAD_ACESS

in .h File 
interface ......... 
{ 
IBOutlet UITextField * usernameField; 
} 
@property(nonatomic,retain) UITextField * usernameField; 

in .m File 

@implementaion ............ 

@synthesize usernameField; 

- (IBAction) editingEnded:(id)sender 
{ 

    [usernameField resignFirstResponder]; 
} 
+0

インターフェイスビルダーに接続されたユーザー名フィールドですか? –

+0

はい、私はIBActionに終了時に終了イベントを添付しましたが、私は '復帰'を押しただけでクラッシュします – Amrit

+1

ログステートメントを含むコードでもクラッシュすると、テキストフィールドivarとは何の関係もありません。あなたの問題は、上記のコードが存在するオブジェクトがリリースされていることです(テキストフィールドは代理人を保持しません) – jrturton

答えて

0

EXEC_BAD_ACCESSを与えます。

@property(nonatomic,retain) IBOutlet UITextField * usernameField; 

これで問題は解決しますか?

+0

ちょっと試してみましたが、それでも問題はないはずですが、まだクラッシュします – Amrit

+0

[usernameField resignFirstResponder] [id resignFirstResponder]にそれが動作するかどうかを確認してください。 –

+0

あなたが意味する[送信者resignFirstResponder]でさえ、仕事がありません – Amrit

0

UITextFieldDelegate Protocolを実装する必要があると思います。この方法では、ユーザーがデリゲートのメソッドを使用して「編集を終了する」ときにイベントを管理できます。私が正しく理解していれば、何がやりたいことは、私はあなたが次の操作を行うことをお勧めして「ファーストレスポンダを辞任」することです。問題がどこにある

- (BOOL)textFieldShouldReturn:(UITextField *)textField{ 
    [textField resignFirstResponder]; 
    return NO; 
} 
関連する問題