私のアプリケーションには 3 つの画面があり、これらには各画面に 3 つの editText があります。私の問題は、これらのアクティビティが起動されるたびに、デフォルトでカーソルが最初の編集テキストに移動し、キーボードがポップアップすることです。
私が欲しいのは、ユーザーが編集ボックスをクリックすると、キーボードだけがポップアップするはずです。
前もって感謝します、
サディア
私のアプリケーションには 3 つの画面があり、これらには各画面に 3 つの editText があります。私の問題は、これらのアクティビティが起動されるたびに、デフォルトでカーソルが最初の編集テキストに移動し、キーボードがポップアップすることです。
私が欲しいのは、ユーザーが編集ボックスをクリックすると、キーボードだけがポップアップするはずです。
前もって感謝します、
サディア
最初にxmlファイルで、編集テキストにこの行が含まれている可能性があることをテストしてください。これは、あなたに<requestFocus />
役立ついくつかの例です
例のリンク
<EditText
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<-- remove this line /// <requestFocus />
</EditText>
これもあなたの活動に追加してください
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
このコードを oncreate() メソッドに入れます。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
}
layout.xml で、次の行を削除します (EditText の下部にあります):
<requestFocus />
これを試してくださいwindowSoftInputMode
。キーボードがポップアップしないようにするすべてのアクティビティを追加してください。タッチEditText
するとその時だけ現れる
android:windowSoftInputMode="stateHidden|adjustPan"
最善の解決策は次のとおりです。(マニフェスト ファイル内)
<activity android:name=".MainActivity"
android:windowSoftInputMode="stateHidden" />