2012-04-08 10 views
0

私のコードでは動作しないbackgroundTouchedキーボードは隠されていません。私はコード問題の配線のために呼び出されたことはないと思う。 どちらもtextField resignFirstResponderとself.view endEditing:YESもNSLogも機能していません。 誰でも私にこのことを教えてもらえますか?何が私はここで行方不明ですか? 私はuitextfieldで書いた後にキーボードを隠そうとしていますが、テキストフィールドはuitableviewセルの中にあります。私はXIBファイルなしのUITableViewControllerにはのUITableViewControllerのiphone

をそれを作った

P.Sありがとうございました。

答えて

1

backgroundTouchedメソッドの代わりに、UITextFieldの代理メソッド(textFieldDidEndEditing:)を使用することを検討してください(私はAppleのマニュアルをリンクしています)。

+0

私はtextFieldDidEndEditingが、テキストフィールドが最初のレスポンダを辞任した後に呼び出されると思います。私の問題は、テキストフィールドを辞める場所がbackgroundTouchedでなければ私は知りません。または、単に私はキーボードで行われたことをアプリに伝える方法を知らない。ご意見をお聞かせください。 – dejoong

+0

'textFieldDidEndEditing'が呼び出された場合、これはユーザーが「完了」ボタン(または「go」ボタンや「検索」ボタンなどのテキストフィールドを終了したこと)を入力したこと、またはユーザーがテキストフィールドの外に触れたことを意味します。いずれにしても、 'textFieldDidEndEditing'が呼び出され、*は' resignFirstResponder'を呼び出してキーボードに遠ざかるように指示する必要があります。 –

+0

私はUITextFieldDelegateをインターフェイスに配置します。put - (void)textFieldDidEndEditing:(UITextField *)textFieldは[textField resignFirstResponder]を呼び出し、textField.delegate = selfを呼び出します。 viewDidLoadでまだそこにあるキーボードは、uitextフィールドの外側をタップするか、完了ボタンを押します。私はここで何が欠けていますか? – dejoong

関連する問題