Android:EditText和Button; 当点击button时,忽略EditText并隐藏软键盘?

<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时,popup软键盘。 用户使用它来inputEditText。

但是,当他们点击button时,我的onClick方法会触发并执行所有的操作,但是软键盘保持在屏幕上,EditText仍然用光标高亮显示。

我也有,在Button的顶部onclick:

 findViewById(R.id.name).clearFocus(); 

尽pipe如此,EditText似乎并没有明确其重点。 我如何使button实际上就像提交表单一样?

此外,我不会转换到一个不同的活动上点击button。 我想这是典型的情况,也可能是他们不打扰隐藏键盘的原因。 但是,我想保持search框和button在屏幕的顶部,所以当按下button时,我只是dynamic地填充和添加视图到屏幕上。

我怎样才能达到我想要的行为?

你可以通过调用这个来隐藏键盘。

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