2011-07-13 12 views
4

がありません数字パッドタイプのキーボードにボタンを押します。 Doneボタンをカスタムに追加したくないのですが、キーボードを消すにはどうしたらいいですか?完了キーを追加せずに数字パッドスタイルのキーボードを消します

+0

ツールバーを使用しますか? – Legolas

+0

はい、ios 3.1.3と互換性があります。 –

+0

ビューに触れるときに解除しますか?あなたはUIControlとしてビューを設定し、numpadを終了させることができますか?まあ、これを行う通常の方法は 'UIToolBar'またはキーボードの中にDone Buttonを置くことです。 – Legolas

答えて

4

あなたは行って、ボタン(UIBarButtonItem)でUINavigationBar/UIToolBarを追加、およびdoneボタンのアクション上のテキストフィールド/ TextViewにresignFirstResponderを作ることができます。

あなたは、TextField /のTextViewのUINavigationBar/UIToolBarとしてinputAccessoryViewを追加することができます。

textField.inputAccessoryView = aNavBarWithDoneButton; 

編集:最も簡単な解決策をタップすると、あなたのUITextField(または何でも)にresignFirstResponderを呼び出し、どこかにあなたのUIで新しいボタンを追加することです可用性のiOS(3.2以降)

+0

キーボードでそのツールバーを追加または追加できますか? –

+0

はい。あなたはできる。私の更新された答えを見てください。 – EmptyStack

+0

がosで動作していない3.1.3 –

2

。ツールバーをツールバーに配置するのは、ツールバーが通常は画面の一番下にあり、キーボードによって隠されているため、iPhoneでは問題があります。

もう少し複雑な解決策は、他のすべてのタップ可能なUI要素の背後に不可視のUIViewを置くことです。既存のUIで処理されなかったタップは、この新しいビューに表示され、テキストフィールドでresignFirstResponderと呼ぶことができます。

これらのいずれも魅力的でない場合は、必要な動作の種類を含めるように質問を展開する必要があります。