私のアプリケーションでは、あるアクティビティから別のアクティビティに移動すると、ソフト キーボードが自動的にポップアップします。
私は設定した1つのアクティビティ(Say A)を持っています
android:configChanges="keyboardHidden"
このアクティビティにはキーボードが必要ないため、このアクティビティから Map と AutoComompleteTextView を含む別のアクティビティ (たとえば B) に移動すると、キーボードが最初に自動的にポップアップしてから閉じます。
アクティビティBで試したこと:マニフェストで設定しました
android:windowSoftInputMode="stateHidden|adjustResize"
作成中
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
私もこれをOnCreateに入れてみました
try{
View view = this.getCurrentFocus();
if (view != null) {
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
}catch (Exception e)
{
Log.e(TAG, "onCreate: keyboard crash");
e.printStackTrace();
}
私はまた、(View v1)のようなアクティビティで別のビューにフォーカスを設定しようとしました
v1.requestFoucs();
私も入れてみました
android:focusableInTouchMode="true"
アクティビティ B のすべてのコンポーネントについて。
しかし、何もうまくいきませんでした。
この問題を解決するのを手伝ってください。以下のリンクのリストに属するすべての受け入れられた ans を既に試しました。
アクティビティの開始時にオンスクリーン キーボードが自動的に開きます
アクティビティ開始時にAndroidキーボードが自動的に表示されないようにする方法
これは私の AutoCompleteTextView です
<AutoCompleteTextView
android:id="@+id/auto_serviceArea"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginStart="10dp"
android:layout_weight=".5"
android:background="@android:color/transparent"
android:cursorVisible="false"
android:hint="@string/serviceArea"
android:padding="5dp"
android:focusable="true"
android:focusableInTouchMode="true"
android:singleLine="true"/>
編集 1: フォーカスを移動できるように、どのビューがフォーカスされているかを確認しようとしました。デバッグ中に AutoCompleteTextView からフォーカスを削除しましたが、アクティビティの開始時にキーボードが表示されなくなりました。したがって、これはオートコンプリート フォーカスの問題ではありません。