A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© lidage 初级黑马   /  2015-11-2 01:49  /  2741 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

5黑马币
安卓开发实例卡在那个文本复制粘贴了 一直不明白输入框edit text怎么回调事件  ??

5 个回复

倒序浏览
et.addTextChangedListener(new TextWatcher() {
@Override
                        public void onTextChanged(CharSequence s, int start, int before, int count) {//在输入数据时监听
}
@Override
                        public void beforeTextChanged(CharSequence s, int start, int count,//输入数据之前的监听
                                        int after) {
                               
                        }
@Override
                        public void afterTextChanged(Editable s) {//输入数据之后监听
                               
                                }
                         }
}

你还以在afterTextChanged(Editable s){ }中 同handler去延迟几秒 就可以了
回复 使用道具 举报
我个人的理解:
TextChangedListener是个监听文本发生改变的对象
输入文本时可以理解成三个动作
1.接收到输入
2.把接收到的输入显示到editText里
3.完成接收
这三个动作对应三个事件监听:beforeTextChanged、onTextChanged、afterTextChanged
也就是说每个动作的触发会回调相应的方法
回复 使用道具 举报

et.addTextChangedListener(new TextWatcher() {
@Override
                        public void onTextChanged(CharSequence s, int start, int before, int count) {//在输入数据时监听
}
@Override
                        public void beforeTextChanged(CharSequence s, int start, int count,//输入数据之前的监听
                                        int after) {
                                
                        }
@Override
                        public void afterTextChanged(Editable s) {//输入数据之后监听
                                
                                }
                         }
}
回复 使用道具 举报
韩文昊 发表于 2015-11-2 12:11
et.addTextChangedListener(new TextWatcher() {
@Override
                        public void onTextChanged(CharSequence s, ...

感谢你。帮助我,
回复 使用道具 举报
感谢大家的帮助。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马