5

Tôi có một DialogFragment có chế độ xem với EditText trong đó. Mỗi khi tôi hiển thị hộp thoại, văn bản đã tập trung và bàn phím xuất hiện.Phân đoạn hộp thoại với và EditText hiển thị bàn phím tự động sau khi tải

Làm cách nào để ngăn không cho tự động cập nhật?

Tôi đã thử đưa android:windowSoftInputMode="stateHidden" trong manifest của tôi cho các hoạt động tạo ra các mảnh vỡ nhưng điều đó không ảnh hưởng

đây là đoạn thoại của tôi

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(); 
} 

}

đây là cách bố trí của tôi

<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> 

Trả lời

9

tôi phải tập trung vào chế độ xem phía trên văn bản chỉnh sửa bằng cách sử dụng

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

trong giao diện

0

Hãy thử điều này:

your_edit_text.clearFocus(); 

Làm thế nào về nếu bạn đã thay đổi trong biểu hiện để:

android:configChanges="keyboardHidden" 

Điều đó đã giúp tôi với một số vấn đề bàn phím tôi đã :-)

+0

không làm việc, hoặc – tyczj

+0

Xem sửa của tôi :-) – Evilunclebill

+0

không xúc xắc với một trong hai :( – tyczj

13

Sử dụng mã này để ẩn nó lập trình

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