問題タブ [inputaccessoryview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
9 に答える
13325 参照

ios - iOS 8 で inputAccessoryView のフレームを変更する

久しぶりの潜入者 - 初めてのポスター!

UITextViewWhatsAppのようにバーを再作成しているときに問題が発生しました。

私はカスタムUIViewサブクラスを使用しており、それを遅延してインスタンス化しています:

- (UIView *)inputAccessoryView

YES を返す:

- (BOOL)canBecomeFirstResponder

inputAccessoryView今、サイズが大きくなったらサイズを変更したいと思いUITextViewます。iOS 7では、ビューのフレームのサイズを変更するだけで、原点ではなく、呼び出すreloadInputViewsと機能します。ビューが上に移動して、キーボードの上に完全に表示されるようにします。

ただし、iOS 8 では、これは機能しません。それを機能させる唯一の方法は、フレームの原点も負の値に変更することです。これは問題ありませんが、奇妙なバグが発生する場合があります。たとえば、UIViewテキストを入力すると「元の」フレームに戻るなどです。

足りないものはありますか?inputAccessoryViewアプリの最新バージョンでのみ、ドラッグ時にキーボードを閉じる方法があるため、WhatsAppが使用していると確信しています。

あなたが私を助けることができるかどうか私に知らせてください!または、私に実行してほしいテストがあれば!

ありがとうございました!:)

ところで、これは私が呼び出したカスタムUIViewの高さを更新するために使用しているコードですcomposeBar:

編集: 完全なソース コードは、@ https://github.com/manuelmenzella/SocketChat-iOSで入手できます。

0 投票する
4 に答える
5032 参照

ios8 - InputAccessoryView が iOS 8 シミュレーターに表示されない

iOS 5以降のiOSアプリケーションがあります。独自のinputViewとinputAccessoryViewを使用するカスタムUITextViewが含まれています。iOS 7 シミュレーターでは動作し、FirstResponse になると inputView と inputAccessoryView の両方が表示されますが、iOS 8 シミュレーターでは関連する inputView のみが表示され、inputAccessoryView は表示されません。

Xcode 6 GMシードを使用しています

HeInput_TextView.m

iOS 8 シミュレーターのバグですか、それとも iOS 8 の変更ですか?

編集:

この問題に関する詳細情報を見つけました。

この問題は、ページベースのアプリケーションで発生します。UIPageViewController のページに UITextView がある場合、UITextView.inputAccessoryView は iOS 8 シミュレーターでは表示されませんが、iOS 7.1 シミュレーターでは表示されます。

「Single-View Based application」と「Page-Based application」の 2 つのプロジェクトを作成し、上記のように問題が発生することを確認しました。

0 投票する
0 に答える
255 参照

ios - iOS では、UINavigationController の UIToolbar を入力アクセサリ ビューとして使用できますか?

私のテキストフィールドがファーストレスポンダーになったら、によって管理されているツールバーのアイテムを変更してUINavigationController、キーボードの上にスライドさせたいのinputAccessoryViewですが、このクラッシュが発生します:

別の UIToolbar を作成する必要inputAccessoryViewがありますか?アイテムを変更して両方の目的に使用する方法はありませんか? (別のジョブに対して別のツールバーを用意するというロジックはわかりますが、不要なツールバーを作成しないというロジックもわかります。)

0 投票する
0 に答える
2525 参照

javascript - iOS の完了ボタンのクリックをキャプチャします。JavaScript/Jquery の使用

iOS ブラウザ フォームでは、フィールド間を移動するための [完了] ボタンと [次へ/前へ] ボタンを含むアクセサリ バーが表示されます。アクセサリ バーで [完了] ボタンのクリック イベントをキャプチャし、カスタム アクションを実行したいと考えています。JQuery/ JQuery モバイル ソリューションは大歓迎です。

他の要素がタップされてもぼかしが呼び出されるため、ぼかし/フォーカスアウトを使用したくありません。このDoneボタンが呼び出されたときにフォームを送信し、他のアクションが発生したときに送信したくありません。

キーコード 13 で keypress イベントをバインドしようとしましたが、ユーザーがキーボードの下部にある完了/送信キーを押したときのイベントのみをキャプチャし、アクセサリ バーのボタンはキャプチャしません。

0 投票する
1 に答える
847 参照

ios - タッチを検出しないinputAccessoryViewに追加されたUIButton

inputAccessoryView含む がありますUIButtonが、UIButtonはタップに応答しません (画像の変更すらありません)。理由はわかりません。これが私のかなり単純なコードです:

0 投票する
1 に答える
343 参照

ios8 - ViewController canBecomeFirstResponder iOS 8

テキストフィールドを表示するために使用されるinputAccessoryViewを持つVCがあります(メッセージアプリによく似ています)。このビューをナビゲーション スタックにプッシュすると、すべて正常に動作します。つまり、tableview がインセットを調整して、アクセサリ ビューの下に何もスクロールしないようにします。ただし、そのビューから同じビュー コントローラー クラスの別のインスタンスをプッシュすると、インセットは調整されず、テーブルのスクロールはアクセサリ ビューの後ろになります。

この問題は、iOS 8 でのみ見られます。これに関するもう 1 つの興味深い点は、アクセサリ ビューをクリックしてキーボードを開くと、キーボードが表示されているときと非表示になっているときにインセットが適切に調整されることです。

また、問題を解決するためにテキスト フィールドをクリックせずに反撃した場合、以前の VC も壊れています。

上記の情報に基づいて、これは iOS 8 のバグであると確信しています。誰かがこれを見て、ある程度合理的な修正を考え出すことを願っています。

0 投票する
1 に答える
994 参照

ios - UITextView inputAccessoryView が iOS 8 のキーボードの上部に重なる

いくつかのUITextViewフィールド用のかなりバニラのinputAccessoryViewツールバーがあります。前へ、次へ、および完了ボタン。それらを UIViewController クラスに入れ、次のように UITextFields に割り当てました。

これは iOS 7 ではうまく機能しました。iOS 8 では、次のようにキーボードの上部に重なるようになりました。

ios8 でキーボードの上部に重なるアクセサリ ツールバー

何が変わったのかについての指針はありますか?それとも、View Controller でラップするのは良いことではなかったのでしょうか?

0 投票する
1 に答える
1586 参照

ios - キーボードの「inputAccessoryView」にUILabelを配置するには?

キーボードのinputAccessoryViewプロパティ(cameraButton)でボタン(画像付き)を取得できました。ただし、UILabel (cameraLabel) を cameraButton の右側に配置しようとすると、Xcode はエラーをスローします - 「[UILabel ビュー]: 認識されないセレクターがインスタンス 0x7fd66ca31a30 に送信されました」

inputAccessoryView を試して、プログラムで UILabel を作成するのはこれが初めてです。これが私のコードです。私はここで何時間もグーグルで検索してきましたが、達成しようとしているのと同じシナリオが見つかりません。どんな助けでも大歓迎です!:

最初の部分:

viewDidLoad メソッドの下 (これらは、さまざまなオンライン リソースからまとめたものです):