2012-04-01 8 views
0

私はIBActionは、テキストフィールドに関連付けられkeyboardResponseはXIBで「製作中変更」イベントハンドラを経由してmyTextFieldIBOutletと呼ばれると呼ばれる持っている:そこにユーザーが何かの後に入力をクリアすることになっています関連付けられているIBAction内のテキストフィールドをリセットできないのはなぜですか?

- (IBAction)keyboardResponse:(id)sender 
{ 
    // process this single character - function I wrote else where that works fine. 
    [self processSingleCharacter:myTextFieldIBOutlet.text]; 

    // clear input text 
    myTextFieldIBOutlet.text = @""; 
} 

私は、iOSシミュレータでこのコードの実行時エラーを取得:

Thread 1: EXC_BAD_ACCESS (code=2, address=0xbf7fff0c) 

なぜ?私は既にIBOutlet myTextFieldIBOutletを合成しました。

+0

"なぜできないのですか..."の代わりに "なぜできないのですか..." – Gargo

答えて

3

myTextFieldIBOutletが合成されている場合、あなたが最後の行を変更する必要があります:あなたはクリアしたいテキストフィールドは、このアクションを呼び出すと同じ制御である場合

self.myTextFieldIBOutlet.text = @""; 

、あなたも、あなたが送信している送信者の変数を使用することができます

[sender setText:@""]; 
+0

ありがとうございます。テキストフィールドは実際にはxibファイルで指定した "Editting Changed"ハンドラを介してIBActionを呼び出します。これらの形式の両方とも何らかの理由で同じエラーが発生するようです。 –

+0

これは奇妙なことですが、私はちょうどテキスト入力フィールドとボタンで簡単なアプリを作ってしまい、これはうまくいくように見えました。私は何が欠けているのだろうか。 –

関連する問題