一.将作为搜索栏的EditText添加两个属性
android:singleLine="true"
android:imeOptions="actionSearch"
二.给EditText设置监听
edt_search.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId,
KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
// 先隐藏键盘
((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE))
.hideSoftInputFromWindow(SelectActivity.this.getCurrentFocus()
.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
if (edt_search.getText().toString().isEmpty()) {
ToastShort("搜索栏不能为空!");
} else {
//搜索
doSearch();
}
return true;
}
return false;
}
});
三.常见属性
属性 |
常量 |
描述 |
actionNext |
EditorInfo.IME_ACTION_NEXT |
下一步,用于跳转到下一个EditText |
actionGo |
EditorInfo.IME_ACTION_GO |
前往,用于打开链接。 |
actionSend |
EditorInfo.IME_ACTION_SEND |
发送,用于发送信息 |
actionSearch |
EditorInfo.IME_ACTION_SEARCH |
搜索,用于搜索信息 |
actionDone |
EditorInfo.IME_ACTION_DONE |
确认,表示完成 |
actionUnspecified |
EditorInfo.IME_ACTION_UNSPECIFIED |
未指定 |
actionNone |
EditorInfo.IME_ACTION_NONE |
没有动作 |