Android:如何使键盘进入button说“search”,并处理其点击?
我无法弄清楚这一点。 一些应用程序有一个EditText(文本框),当你触摸它,它会popup屏幕上的键盘,键盘有一个“search”button,而不是一个input键。
我想要实现这个。 我怎样才能实现这个searchbutton,并检测按下searchbutton?
编辑 :find如何实现searchbutton; 在XML中, android:imeOptions="actionSearch"
或在Java中, EditTextSample.setImeOptions(EditorInfo.IME_ACTION_SEARCH);
。 但是,如何处理用户按下searchbutton? 它有什么与android:imeActionId
?
在布局中设置你的input法选项来search。
<EditText android:imeOptions="actionSearch" android:inputType="text" />
在java中添加编辑器动作监听器。
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_SEARCH) { performSearch(); return true; } return false; } });
在XML中, 把imeOptions:actionSearch和inputType:“text”,maxLines:“1”
<EditText android:id="@+id/search_box" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="@string/search" android:imeOptions="actionSearch" android:inputType="text" android:maxLines="1" />
用户点击search时隐藏键盘。 除了Robby池回答
private void performSearch() { editText.clearFocus(); InputMethodManager in = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); in.hideSoftInputFromWindow(searchEditText.getWindowToken(), 0); ...perform search }