問題タブ [uiinputviewcontroller]

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 投票する
2 に答える
2470 参照

ios - Swift で UITextField のカスタム入力を作成する

Swift 言語で iOS アプリをプログラミングしていますが、テキストフィールドのカスタム入力を作成するだけです。

2 つのボタンを備えた追加のビュー コントローラーを作成しました。テキスト フィールドを強調表示すると、このビュー コントローラー (キーボードではなく) がポップアップ表示されます。
基本的に私が欲しいのは小さなカスタム キーボードを作成することですが、それを自分のアプリ内に配置したいだけです: カスタム キーボードの作成に関する多くのチュートリアルを見つけましたが、それは単純な View Controller を持つことと同じではありません。テキスト フィールドが強調表示されます。

私のView ControllerをtextField.inputViewControllerSwiftに割り当てる方法を提案できますか?

ありがとう

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

ios - キーボード拡張機能のクラスである UIInputviewcontroller で PFquery を使用できますか?

キーボード ビューで、PFquery を生成するボトムを作成しました。次に、[self.textDocumentProxy insertText: str] によって、このクエリされた文字列をテキスト フィールドに挿入します。ただし、このボタンをクリックすると、キーボードは次のキーボード モードにジャンプします。助けてください!ありがとう、そしてメリークリスマス。

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

ios8 - カスタム キーボード iOS8 非英語文字

iOS8用のビルマ語キーボードを作成しようとしています。そして、iOSにキャラクターを知らせる方法がわかりません。Safari でカスタム キーボードを表示しましたが、書き込もうとすると「?」と表示されます。それだけ。これまでユニコードを試してきました。そして、ここからの行き方がわかりません。

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

ios - Swift スーパークラス uiinputviewcontroller の指定された初期化子を呼び出す必要があります

今朝 8.3 にアップグレードした後、件名にエラーが表示されます。

以下のコードは以前は完全に機能していましたが、コンパイルできなくなりました。どなたか助けていただけませんか?

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

ios - ユーザーがUITextInputを変更したかどうかをテストするには?

次のメソッドを実装した UIInputViewController を使用して、iOS 用のカスタム キーボードを開発しています: textWillChangetextDidChange

キーボードで現在押されているテキスト フィールドの自動大文字化パラメータを設定するために、ユーザーが現在のテキスト フィールドを変更して別のフィールドに移動したときを知りたいです。

今、私はこのようなことをしようとしました:

または、次のようなものでもあります。

しかし、これらのオプションはどれも私にはうまくいきません。

更新:お気づきのとおり、コールバック メソッドで受け取るオブジェクトは UITextField オブジェクトではなく、実際にはプロトコルである UITextInput オブジェクトであり、テキスト フィールド自体ではありません。したがって、オブザーバーを追加することはできません。私のキーボード アプリケーションは、ユーザーがテキストを入力するフィールドを制御しません。

質問:ユーザーが現在のテキスト フィールドを変更した瞬間をどのように認識できますか?

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

ios - iOS 8 キーボード拡張: UIInputViewController textDocumentProxy 接続が無効化されました

iOS 8 キーボード拡張機能に を追加しUITextFieldて、ユーザーがキーボード内の絵文字やその他の要素を検索できるようにしました。

たとえば Notes.app でユーザーが入力している場合、ユーザーはキーボード拡張機能の検索フィールドをタップして検索を開始します。タップすると、拡張機能は次のようにログに記録します。

-[UIKeyboardInputManagerClient handleError:forRequest:] は、エラー Domain=NSCocoaErrorDomain Code=4099 "The operation could not be completed. (Cocoa error 4099.)" (com という名前のサービスへの接続.apple.TextInput が無効になりました。) UserInfo=0x170276e00 {NSDebugDescription=com.apple.TextInput という名前のサービスへの接続が無効になりました。}

kbd クラッシュ ログを確認してください。- [UIKeyboardInputManagerClient handleError:forRequest:] 送信に 2 回連続して失敗した後、キーボード デーモンへの接続を閉じました

この後、ユーザーは Notes.app テキストをタップして編集に戻ります。これで、使用して textDocumentProxy に送信されたテキストは、Notes.app テキストではなくinsertText:、キーボード拡張機能に引き続き送信されUITextFieldます。

デリゲート メソッドは、textDidChange:メモ テキストをタップすると、引き続き呼び出されます。また、textDocumentProxys プロパティdocumentContextBeforeInputdocumentContextAfterInputは、Notes.app テキストからの正しいテキストが含まれています。

UITextFieldが textDocumentProxy の「リスナー」になっているように見えますが、そうすべきではありません。

私は成功せずに試しました:

  • userInteractionEnabled = NO上の設定UITextField
  • resignFirstResponder上でUITextField
  • endEditing:YES上でUITextField
  • プロパティの変更を監視しtextDocumentProxyますが、同じオブジェクトを参照し続けます。

回避策は、別のキーボードを選択してから、自分のキーボードに戻ることです。その後、接続が復元され、すべてが正常に戻ります。(ユーザーが再度 UITextField をタップするまで)。

App Store で、同じ問題を抱えているカスタム キーボード アプリをいくつか見つけました。これは私にそれが解決できないと思うように導きました。ただし、問題なく動作し、ユーザーが問題なくテキスト フィールドを移動できるカスタム キーボード アプリも見つけました。

何か案は?