EditText绑定TextWatcher后处理事件卡顿
来源:互联网 发布:淘宝店铺申请全球购 编辑:程序博客网 时间:2024/05/29 08:18
今天遇到一个问题,需要监听EditText中的内容变化,当编辑框内的内容清空时加载网络数据,自然而言会在afterTextChanged方法中执行我的对应逻辑,但是遇到了一个问题,当我的内容变化时,UI直接卡死。经过查阅资料,发现原因如下:
1.原因
EditText在addTextChangedListener添加的TextWatcher中如果在afterTextChanged方法中又重新调用了setText, 那么会重复触发对此方法的递归死循环调用, 产生ANR
2.解决方案
在执行逻辑前先remove掉EditText绑定的监听器,等逻辑执行完毕后再绑定该监听器.代码如下:
@Override public void afterTextChanged(Editable s) { xxxEdit.removeTextChangedListener(this); xxxEdit.setText("新取值"); xxxEdit.addTextChangedListener(this); }
问题得到了解决,在此记录。
阅读全文
1 0
- EditText绑定TextWatcher后处理事件卡顿
- TextWatcher接口的使用:监听EditText文字变动事件
- EditText绑定键盘监听事件
- TextWatcher监控EditText
- 使用TextWatcher监听EditText
- TextWatcher监控EditText
- TextWatcher EditText 文本监听
- TextWatcher实现一键清空EditText
- TextWatcher 监听edittext
- Android EditText 之 TextWatcher
- EditText 监听-----TextWatcher
- EditText中的TextWatcher监听
- android 中动态监听Edittext控件内容长度 TextWatcher监听事件
- 安卓EditText有时点击后无法自动弹出键盘的解决办法;TextWatcher多次调用问题
- Android EditText监测(TextWatcher)输入后延时500ms再搜索
- vue 事件绑定 处理-
- 监听EditText的变化--TextWatcher
- Android EditText TextWatcher应用实例
- IDEA导入Spring源码(Gradle导入)
- Comand
- 32位汇编指令笔记
- 简单的桶排序法
- Spring之AOP
- EditText绑定TextWatcher后处理事件卡顿
- 冒泡排序法
- 在路由器上配置标准ACL
- 桥接模式与装饰模式的对比
- java 原生态CRUD高级封装
- 从0开始学git 第6节:给git目录的文件建立快照
- Java常用类
- 快速排序法
- Python 学习日知录(二)- 日志