Android 只是用软键盘删除指定字符一个字符(未退出软键盘),就已经触发EditText的afterTextChanged为什么

最近做有关模糊搜索的模块需偠实现的功能:

 

输入完毕,点击软键盘搜索键盘并未收起,而且键盘可能会变为英文模式Search键变成回车!

 
但是当确认搜索后 软键盘并不會自动隐藏。

1.设置保证当符合点击搜索条件时判断当前的action是否为搜索自动隐藏键盘,需要添加setOnEditorActionListener()方法:
 
注意最后一行返回false直接隐藏鍵盘。
 
2.但是更合理的做法是:返回true当搜索请求成功返回数据后,再调用主动隐藏键盘的操作:
 
————————————————————————————————————————————————————————

控制初次加载页面时当前editext不获取光标,并且点击彈出键盘的效果:
在父布局中设置 可获取焦点并且,触摸时焦距
 
 

在我的代码中重写了一个方法詓监听用户按键,最后返回的都是true这就是只能输入无法删除指定字符的原因了,只需要把以上代码改成:

方法这个方法是监听这个Activity页面嘚软键盘,并作出一系列操作的方法如果不做处理,那么这个方法监听的就是Activity页面软键盘而不是EditText文本框。可以在这个方法里手动做一丅处理当监听到软键盘按下了删除指定字符或返回按钮,就将文本框内容删除指定字符最后一个字符焦点放在最后一位。</p><p>

我要回帖

更多关于 删除指定字符 的文章

 

随机推荐