<EditText android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_weight="1"
android:id="@+id/name" android:singleLine="true"
android:maxLength="12" android:capitalize="none" android:inputType="text" />
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content" android:id="@+id/search_button"
android:text="Search" />
У меня есть это наверху моего приложения. Когда приложение запускается, EditText оранжевый выделенный и имеет курсор в нем; когда EditText касается, программируемая клавиатура открывается. Пользователь использует его для ввода в EditText.
Однако, когда они нажимают кнопку, мои onClick огни метода, и делает все, что она, как предполагается, однако программируемая клавиатура остается на экране, и EditText все еще выделяется с его курсором.
Я также имею наверху Кнопки onclick:
findViewById(R.id.name).clearFocus();
Несмотря на это, EditText, кажется, не очищает свой фокус. Как я заставляю кнопку на самом деле действовать, как будто она отправляет форму?
Кроме того, я не перехожу к другому Действию по щелчку Кнопки. Я предполагаю, что это - типичный случай и вероятно причина, почему они не потрудились скрывать клавиатуру. Однако я хочу сохранить поле поиска и кнопку наверху экрана, таким образом, я просто динамично заполняю и добавляю представления к экрану при нажатии кнопки.
Как я могу достигнуть своего желаемого поведения?
Вы можете скрыть клавиатуру, вызвав это.
InputMethodManager imm = (InputMethodManager) getSystemService(
INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getWindowToken(), 0);