在做搜索输入框时,弹出软件盘有搜索,需要在xml文件中设置EditText的imeOptions属性,它的值为actionSearch,如例子:
<EditText
android:id="@+id/search"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:imeOptions="actionSearch"/>
需要注意:还需设置android:singleLine 值为true,这样就能准确的显示搜索了,而不是显示回车。
然后,在java类中注册EditText监听事件setOnEditorActionListener,来获取输入框内容并隐藏软键盘,如下代码:
searchEdt.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if(actionId == EditorInfo.IME_ACTION_SEARCH)
{
Utils.hideSoftKeyBoard(MyAssistantActivity.this); // 隐藏软键盘
searchKey = searchEdt.getText().toString();
}
return false;
}
});