最初のフィールドがEditTextである画面があり、起動時にフォーカスが取得され、数値入力タイプもポップアップ表示されます。これは非常に煩わしいことです。
アクティビティの開始時にフォーカスが取得されていないこと、および/または入力パネルが上がっていないことを確認するにはどうすればよいですか?
最初のフィールドがEditTextである画面があり、起動時にフォーカスが取得され、数値入力タイプもポップアップ表示されます。これは非常に煩わしいことです。
アクティビティの開始時にフォーカスが取得されていないこと、および/または入力パネルが上がっていないことを確認するにはどうすればよいですか?
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(editTextField.getWindowToken(), 0);
また
アプリケーションタグで以下のようにマニフェストファイルのアクティビティプロパティを設定します
android:windowSoftInputMode="stateHidden"
アプリケーションマニフェストファイルに移動し、自動キーボードポップアップを無効にするアクティビティについてこの行を記述します。
android:windowSoftInputMode="stateHidden"
プログラムでキーボードを表示せずに、デフォルトのウィジェットでフォーカス呼び出しを受信するには、次のようにします。
getWindow().setSoftInputMode(WindowManager.
LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
のonResume()
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
onCreate()内で上記のメソッドを呼び出します。ユーザーがEditTextを選択しない限り、softKeyboardが表示されないようにします。
tapping or clicking.
android:windowSoftInputMode="stateHidden"
または、アクティビティタグを追加するだけですManifest.xml
これは通常、混乱です。私が最初に試みることは、を介して別のビューでフォーカスを盗もうとすることです。また、focusableとfocusableInTouchModeが必要です。
<TextView
...
android:focusable="true"
android:focusableInTouchMode="true">
<requestFocus/>
</TextView>
別のビューでフォーカスを取得します。デフォルトでは、最初のフォーカス可能なビューは、レイアウトが膨らんだときにフォーカスを取得します。XMLを介して別のビューにフォーカスをリクエストできます。
<TextView
android:layout_width="wrap_parent"
android:layout_height="wrap_content"
android:text="Some other view">
<requestFocus />
</TextView>
これはどのビューでも機能します。
プログラムで実行したい場合は、を使用できますview.requestFocus()
。
android:windowSoftInputMode="stateHidden"
マニフェストでアクティビティに追加すると、アクティビティを起動するとき、またはGoogleが言うように、キーボードが非表示になります。
ユーザーが別のアクティビティを離れたためにアクティビティに戻るのではなく、アクティビティに積極的に移動した場合
ユーザーが戻るボタンを押して他のアクティビティからアクティビティに戻ったときにもキーボードを非表示にするには、次を使用します。android:windowSoftInputMode="stateAlwaysHidden"
if(getWindow().getAttributes().softInputMode==WindowManager.LayoutParams.SOFT_INPUT_STATE_UNSPECIFIED)
{
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
}
これを試したことがなく、プログラミングコンピュータの近くにいませんが、プログラムで親ビューにフォーカスを送信するか、その性質の何かがトリックを実行できると思われます-それは解決策よりも回避策である可能性が高いですが、それをテストすることはできません思い