2013-09-19 5 views
0

У меня есть простой вопрос, но я не могу найти его нигде после поиска в Интернете. Надеюсь, что я получу здесь ответ.как спрятать виртуальную клавиатуру в android после не сфокусированного editext

У меня есть edittext. Каждый раз, когда этот edittext сфокусирован, отображается виртуальная клавиатура. Однако, если бы я щелкнул в другом месте, отличном от edittext, я полагаю, что клавиатура будет скрыта. Но это не так. Я не знаю, есть ли какое-либо событие, такое как isUnfocus или что-то подобное для edittext, чтобы я мог скрыть виртуальную клавиатуру.

Заранее спасибо.

+0

add android: windowSoftInputMode = "stateHidden" внутри в манифесте XML.

ответ

2

Добавьте эту строку

android:windowSoftInputMode="stateHidden" 

к вашему AndroidManifeast.xml<Activity></Activity> тега. Он скрывает клавиатуру, когда щелкнет в любом месте экрана, если клавиатура будет видна.

1

только что добавленный наборOnFocusChangeListener to Edittext,.

EditText editTextProfileName = (EditText) view 
        .findViewById(R.id.nameEditText); 

      editTextProfileName.setOnFocusChangeListener(new OnFocusChangeListener() { 

       public void onFocusChange(View v, boolean hasFocus) { 
         if (!hasFocus) { 
          hideKeyboard(); 
         } 
       } 

       private void hideKeyboard() { 
        if (editTextProfileName != null) { 
         InputMethodManager imanager = (InputMethodManager) getActivity() 
           .getSystemService(Context.INPUT_METHOD_SERVICE); 
         imanager.hideSoftInputFromWindow(editTextProfileName.getWindowToken(), 0); 

        } 

       } 
      }); 
+0

он работает, спасибо! – Jonguo

Смежные вопросы