Диалоговый фрагмент с и EditText показывает клавиатуру автоматически после загрузки

У меня есть DialogFragment, который имеет представление с EditText в нем. Каждый раз, когда я показываю диалог, у edittext есть фокус, и клавиатура появляется.

Как я могу остановить его автоматически?

Я попытался поставить android:windowSoftInputMode="stateHidden" в моем манифесте для активности, которая создает фрагмент, но который не имеет эффекта

Это мой фрагмент диалога

 public class RegDialog extends DialogFragment { OnRegComplete mRegComplete; @Override public void onAttach(Activity activity){ super.onAttach(activity); try{ mRegComplete = (OnRegComplete)activity; }catch(ClassCastException e){ throw new ClassCastException(activity.toString() + " must implement OnRegComplete"); } } public Dialog onCreateDialog(Bundle state){ Dialog d = new Dialog(getActivity()); d.requestWindowFeature(Window.FEATURE_NO_TITLE); d.setContentView(R.layout.registration); d.setCanceledOnTouchOutside(false); return d; } public interface OnRegComplete{ void onRegComplete(); } 

}

Это мой макет

 <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@+id/imageView1" android:layout_marginLeft="20dp" android:layout_alignParentTop="true" android:layout_marginTop="20dp" android:layout_marginRight="20dp" android:textSize="30sp" android:text="Registration" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/textView3" android:layout_marginLeft="26dp" android:layout_marginTop="16dp" android:text="State" android:textAppearance="?android:attr/textAppearanceLarge" /> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_below="@+id/imageView1" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView2" android:layout_marginTop="10dp" android:textAppearance="?android:attr/textAppearanceLarge" android:text="@string/reg_title" /> <Spinner android:id="@+id/spinner2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/textView4" android:layout_toRightOf="@+id/textView4" android:layout_marginRight="50dp" android:minWidth="300dp" android:layout_alignLeft="@+id/editText1" /> <TextView android:id="@+id/textView5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView4" android:layout_below="@+id/textView4" android:layout_marginTop="40dp" android:text="Station" android:textAppearance="?android:attr/textAppearanceLarge" /> <TextView android:id="@+id/textView4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView2" android:layout_below="@+id/textView2" android:layout_marginTop="40dp" android:text="County" android:textAppearance="?android:attr/textAppearanceLarge" /> <Spinner android:id="@+id/spinner1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/textView4" android:layout_marginRight="50dp" android:minWidth="300dp" android:layout_alignLeft="@+id/editText1" /> <EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/textView6" android:layout_toRightOf="@+id/textView6" android:layout_marginRight="50dp" android:minWidth="300dp" android:layout_marginLeft="20dp" android:ems="10" android:inputType="textPassword" /> <Spinner android:id="@+id/spinner3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/textView6" android:layout_marginRight="50dp" android:minWidth="300dp" android:layout_alignLeft="@+id/editText1" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="36dp" android:text="@string/reg_btn" /> <TextView android:id="@+id/textView6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView5" android:layout_below="@+id/textView5" android:layout_marginTop="42dp" android:text="Password" android:textAppearance="?android:attr/textAppearanceLarge" /> <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="60dp" android:layout_marginTop="15dp" android:src="@drawable/mobile_mapr_logo" /> </RelativeLayout> 

Используйте этот код, чтобы скрыть его программным путем

 Dialog dialog = builder.create(); dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN); 

Мне нужно было сосредоточиться на представлении над текстом редактирования, используя

 android:focusable="true" android:focusableInTouchMode="true" 

В представлении

Попробуй это:

 your_edit_text.clearFocus(); 

Как насчет того, изменились ли вы в манифесте на:

 android:configChanges="keyboardHidden" 

Это помогло мне с некоторыми проблемами с клавиатурой, которые у меня были 🙂