2013-08-30 2 views
7

나는 DialogFragmentListView (모든 고객을 표시)과 EditText (목록에서 검색)으로 사용하고 있습니다. 정상적으로 작동합니다. 그러나 단편에서 대화 상자가 표시 될 때마다 키보드는 항상 표시되고 사용자는 사임해야합니다. 대화 상자 조각을 표시하면서 이것을 숨기려면 어떤 방법이 있습니까? 그런 다음 사용자가 텍스트 편집을 클릭하면 키보드가 나타납니다.태블릿에서 DialogFragment를 표시 할 때 키보드를 숨기시겠습니까?

내 XML에 android:focusable="false"을 설정하려고했지만 문자도 표시되지 않고 EditText을 클릭하면 항상 키보드가 숨겨집니다.

android:windowSoftInputMode="stateHidden" 

또는

당신의 DialogFragment onCreateView에서
android:windowSoftInputMode="stateUnchanged" 
+0

[post] (http://stackoverflow.com/questions/1555109/stop-edittext-from-gaining-focus-at-activity-startup) –

+0

http://stackoverflow.com/questions/1555109/stop-edittext-from-geting-focus-at-activity-startup – RVG

+0

감사합니다 친구들이 그것을 확인하고 @Ganesh를 알립니다 – krishh

답변

16

()가 다음을 추가 이것은 당신의 문제를 해결해야

+0

굉장합니다. 나는 다른 모든 게시물을 막 볼 수 있었는데, 아무리 작동하지 않더라도 조각을 다룰 때 상관없이 ... getDialog()와 getActivity()가 중요했습니다. 감사! – James

+0

대화 상자가 Android 4.4의'DataPickerFragment' 일 때 작동하지 않으며'onResume()'메소드에 hide 키보드 메소드를 넣으면 작동합니다. 어쨌든, – DysaniazzZ

1

위와 같이

은 그 때 나는 같은지고, android:focusableInTouchMode="true" 설정을 시도했지만 :

public View onCreateView(LayoutInflater inflater, ViewGroup container, 
        Bundle savedInstanceState) 
{ 
View view = super.onCreateView(inflater, container, savedInstanceState); 
//to hide keyboard when showing dialog fragment 
getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN); 
return view; 
} 
관련 문제