2013-06-28 52 views
20

Tôi có một hộp thoại tùy chỉnh với EditText trong đó. Khi hộp thoại xuất hiện tiêu điểm trên EditText và bàn phím mềm đang hiển thị. Làm cách nào để tránh điều này? tôi đã cố gắng:Làm thế nào để ẩn bàn phím trên hộp thoại hiển thị?

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
imm.hideSoftInputFromWindow(edittext.getWindowToken(), 0); 

nhưng họ không làm việc cho tôi. Tôi nghĩ rằng những điều này không làm việc cho hộp thoại.

+0

xem câu trả lời của tôi và nếu u tìm nó hữu ích xin vui lòng làm cho nó chấp nhận và nếu uh ave vấn đề liên quan đến hộp thoại tôi có thể giúp đỡ. – TheFlash

Trả lời

45

Bạn đã thử nó chưa? Tôi đã thử nghiệm nó. Nó đang hoạt động.

thay đổi

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 

Để

dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 
+6

Cảm ơn, người đàn ông! Nó hoạt động như một say mê! – Salvatore

+1

Cảm ơn, Nó cũng làm việc cho tôi như MayCustomDialog.this.getWindow(). SetSoftInputMode (WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); –

8

Đến layout xml và đạt được bố trí chủ yếu và đặt sau

android:focusable="true" 
android:focusableInTouchMode="true" 
+0

Thanx người đàn ông .. bạn tiết kiệm ngày của tôi. – Neo

+1

giải pháp tốt nhất, đã làm việc cho tôi. – TharakaNirmana