2014-10-07 2 views
0

У меня есть форма с различными EditText и кнопка подтверждения, Мне нужно, чтобы пользователь нажал подтвердить, что есть EditText, который в настоящее время используется, клавиатура будет кратковременно закрыта, но если пользователь попытается снова отредактировать один из EditText, клавиатура появится снова.Как закрыть кратковременную клавиатуру Android в любом активном режиме EditText

Как я могу это сделать без добавления тонны кодовых линий для управления каждым EditText отдельно?

ответ

1

использование просто InputMethodManager

таким образом

InputMethodManager imm = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE); 
imm.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0); 
+0

Отлично! Я отвечу на ваш ответ после 5-минутного обратного отсчета. Благодарю. – AndreaF

+0

ваше приветствие;) –

0
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE); 
       //Find the currently focused view, so we can grab the correct window token from it. 
View view = getCurrentFocus(); 
//If no view currently has focus, create a new one, just so we can grab a window token from it 
if(view == null) { 
    view = new View(this); 
} 
inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0); 

Это закроет же раскладку, хотя я не уверен, если клавиатура будет открыт для усиления того же текста редактирования, не пробовал.