2

Androidの画面キーボードをtrigger.ioでプログラムで閉じる方法はありますか?

オートコンプリート検索がオンになっている検索フィールドがあります。ユーザーが入力をやめると、検索結果が表示されますが、画面上のキーボードは表示されたままになり、多くの結果が見えなくなります。

4

1 に答える 1

7

を使用してこれを行うには、実際には 2 つの方法がありますTrigger.io

ネイティブプラグイン

ソフト キーボードを非表示にするネイティブ プラグインを作成できます。関連するコードは次のようになります ( Close/hide the Android Soft Keyboardに基づく):

InputMethodManager inputMethodManager = (InputMethodManager) ForgeApp.getActivity().getSystemService(Activity.INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(ForgeApp.getActivity().getCurrentFocus().getWindowToken(), 0);

Javascript

Javascript を使用してソフト キーボードを非表示にする適切な方法は、現在フォーカスされている要素をぼかすことです。最新のブラウザーでは、次のように呼び出すだけです。

document.activeElement.blur()

ただし、document.activeElement常に利用できるとは限らず、正しくないように見えることもあります。私は次のようなものを使用します:

if (document.activeElement && 
    document.activeElement.blur && 
    document.activeElement !== document.body) {
  document.activeElement.blur();
}
else {
  jQuery(':focus').blur();
}

これでも一部のAndroid 2.x デバイスでは機能しません。JavaScript を使用して Android キーボードを非表示にする方法を確認してください。より多くの回避策があります。

于 2013-05-01T19:23:45.370 に答える