点击回车搜索
今天发现一个好玩的,也是常用的
输入框输入完后按回车搜索,并且隐藏键盘。
第一步:xml
<EditText
android:id="@+id/city"
android:imeOptions="actionSearch"
android:singleLine="true"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/search"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:text="搜索" />
第二步,重写回车键
edit = (EditText) findViewById(R.id.edit); search = (Button) findViewById(R.id.search); city.setOnKeyListener(new View.OnKeyListener() { @Override public boolean onKey(View v, int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_ENTER) {//重写回车键 search(); } return false;//这里很好玩,你把false改成true试试,你会发现其他按键会被拦截 } }); getWeather.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { search(); } });
第三步,隐藏小键盘
//隐藏键盘 public class HideKeyBoard { //注意,这里不是构造方法 public static void HideKeyBoard(Activity activity){ InputMethodManager inputMethodManager = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.hideSoftInputFromWindow(activity.getCurrentFocus() .getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); } }
第四步,在search()中使用
public void search(){ //隐藏键盘 HideKeyBoard.HideKeyBoard(this);
//....其他搜索内容... }