安卓EditText调用输入法的搜索按钮

前几天发现项目里的输入框搜索按钮没有与输入法里的同步起来,这样会造成使用的不方便,于是把项目里所有的输入框全部同步上了搜索按钮,在这里顺便也写一下
其实这个同步输入法的搜索很简单,主要的设置都在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); 
接下来调用监听事件一样可以达到效果

你可能感兴趣的:(安卓EditText调用输入法的搜索按钮)