私は、iPhoneのキーボードの上部にツールバーを追加するには、this questionのJoshに記載されている方法を使用しています。基本的には、アイデアは次のとおりです。最初のレスポンダの変更により、iPhoneキーボードのツールバーが表示されるようにしますか?
- これらの通知が掲載されているときはいつもと一緒に/画面のオフツールバーをアニメーション化し、その初期化メソッド
- で通知
UIKeyboardWillShowNotification
とUIKeyboardWillHideNotification
のためのオブザーバーとしてビューコントローラを追加します。キーボード
私はまた、ユーザーが任意のテキストフィールドオフ、別のテキストフィールドをタップするか、のどちらか(編集のために選択したときにファーストレスポンダになってすべてが画面上に複数のUITextFieldsを、持っていると編集が完了したときに最初の応答者を辞任キーボードの「完了」を押す - 私は01を持っていますはresignFirstResponder
に上書きされます)。
テキストフィールド間を切り替えるたびに通知がポストされているので、問題があります。たとえば、ユーザーがテキストフィールドAを編集していて、テキストフィールドAを編集し、テキストフィールドBをタップすると、Aは最初のレスポンダを辞退し、Bは最初のレスポンダになります。しかし、これはまた、「表示される」と「非表示になる」の両方の通知をView Controllerに通知します。
最終的な結果は、ツールバーが最初のテキストフィールドのキーボードで表示され、最後のテキストフィールドのキーボードで消えてしまう間に、ツールバーがユーザーはテキストフィールド間を切り替えます。
キーボードがの場合、実際にが表示または非表示になる場合、「will {show、hide}」通知にのみ応答する方法はありますか?別の言い方をすれば、キーボードの可視状態が変化しない通知を無視するにはどうすればよいですか?
! – Tim
ええ、それは痛みです。最近、キーボードの上にツールバーが表示され、ハッキングを止めて機能させていきます。 –