前几天发现项目里的输入框搜索按钮没有与输入法里的同步起来,这样会造成使用的不方便,于是把项目里所有的输入框全部同步上了搜索按钮,在这里顺便也写一下
其实这个同步输入法的搜索很简单,主要的设置都在edittext上,首先在xml文件里设置edittext的属性:
这个属性是让按钮变成搜索的样式,你也可以设置其他参数,例如actionDone、actionNext等等,然后再添加
这里是为了保证点击不换行而做的操作
xml文件处理完了,接下来就可以直接在activity里写监听了,
其实这个同步输入法的搜索很简单,主要的设置都在edittext上,首先在xml文件里设置edittext的属性:
android:imeOptions="actionSearch"
这个属性是让按钮变成搜索的样式,你也可以设置其他参数,例如actionDone、actionNext等等,然后再添加
android:singleLine="true"
这里是为了保证点击不换行而做的操作
xml文件处理完了,接下来就可以直接在activity里写监听了,
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
if (i == EditorInfo.IME_ACTION_SEARCH || i == EditorInfo.IME_ACTION_UNSPECIFIED) {
//此处做逻辑处理
return true;
}
return false;
}
});
如此便可以达到效果了,当然如果你的editText是动态创建的,那么就无法从xml里给editText设置参数了,但我们可以动态的给添加
EditText editText=new EditText(this);
editText.setSingleLine();
editText.setImeOptions(EditorInfo.IME_ACTION_SEARCH);
接下来调用监听事件一样可以达到效果