布局:
android:id="@+id/search_input"
android:background="#00000000"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:layout_marginLeft="5dip"
android:layout_marginRight="3dp"
android:drawableLeft="@drawable/push_mail_search"
android:drawablePadding="5dp"
android:ellipsize="end"
android:hint="搜索"
android:imeOptions="actionSearch"
android:singleLine="true"
android:focusable="true"
android:paddingLeft="2dp"
android:maxLines="1"
android:textColorHint="@color/gray_btn_bg_color"
android:textColor="#222222"
android:textSize="15sp" />
这是我项目里的布局文件,想要让EditText 显示搜索,最主要是两个配置:
android:imeOptions="actionSearch"
android:singleLine="true"
点击搜索框隐藏键盘:
search_input.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
// 当按了搜索之后关闭软键盘
Utils.hideKeyboard(search_input);
return true;
}
return false;
}
});
这里用到的工具类
Utils.hideKeyboard(search_input);
如下:
/**
* 隐藏软键盘
*
* @param context :上下文环境,一般为Activity实例
* @param view :一般为EditText
*/
public static void hideKeyboard(View view) {
InputMethodManager manager = (InputMethodManager) view.getContext()
.getSystemService(Context.INPUT_METHOD_SERVICE);
manager.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
轻松实现搜素,并且点击隐藏键盘。