菜鸟的安卓实习之路----TextWatcher的三个函数
来源:互联网 发布:4d软件打不开 编辑:程序博客网 时间:2024/05/21 10:27
项目总算是要告一段落了。今天有时间再来更新几篇bolg。
这次在项目中,需要实现一个纯数字软键盘,来给程序中遇到的所有文本框填充数字,点击之后,就要弹出,遇到了这种情况,点击Adilog上面的一个preference之后,弹出一个编辑框,点击编辑框弹出软键盘。,这时候,需要preference上面的summary和文本框保持同步,这个时候,要怎么做呢?TextWatcher,妥妥的!
TextWatcher是一个接口interface , 里面有三个函数
public void beforeTextChanged(CharSequence s, int start,int count, int after); public void onTextChanged(CharSequence s, int start, int before, int count); public void afterTextChanged(Editable s);
在你需要监听文本框的Preference类中, implements TextWatcher,之后,IDE会自动为你生成这三个需要实现的函数。
在你的程序里面为文本框添加这个事件 dlg.getAddressEditText().addTextChangedListener(this); 由于我的文本框在新弹出的对框上面,当然信对框框一定要写一个getAddressEditText() 来返回备件听到的编辑框EditText对象。 关键是添加事件监听函数
addTextChangedListener(this)
那么这三个函数是什么意思呢?
beforeTextChanged: 指的是在你编辑之前文本框的内容。
<pre name="code" class="html">onTextChangedandroid 这么说:This method is called to notify you that, within
s
, thecount
characters beginning at start
have just replaced old text that had lengthbefore
. 这句话是说,有count个字符从start位置开始,替代了旧的文本框内的before个字符。
如果你添加了,一个字符,就从start位置开始,before=0 ,之前并没有什么被替代。如果你删了一个字符,start同样的意思,before=1就是1个字符被替代0个字符替代,所以count=0;
其中这几个参数:s 就是输入或者删除之后,文本框中的东西了,你往里面填一个字符,count就是1 ,删一个就是0 ,start貌似是光标的位置,before,start我也真心没搞清楚,唉,就这样吧,
afterTextChanged 过分简单,自己看着办吧。
- 菜鸟的安卓实习之路----TextWatcher的三个函数
- 菜鸟的安卓实习之路----TextWatcher的三个函数
- 菜鸟的安卓实习之路---java的instance
- 菜鸟的安卓实习之路----java的this函数
- 菜鸟的安卓实习之路----开篇
- 菜鸟的安卓实习之路---布局思想
- 菜鸟的安卓实习之路---采用preferenceFragment布局
- 菜鸟的安卓实习之路---- setClickable和setEnabled
- 菜鸟的安卓实习之路---布局
- 菜鸟的安卓实习之路---layoutParams
- 菜鸟的安卓实习之路---如退出应用程序
- 菜鸟的安卓实习之路---发邮件
- 菜鸟的安卓实习之路---设置Activity的大小
- 菜鸟的安卓实习之路---Intent的几个用处
- 菜鸟的安卓实习之路----java的可变参数...
- 菜鸟的安卓实习之路---- android的广播(1)
- 菜鸟的安卓实习之路----dialog大小,位置等的调整
- 菜鸟的安卓实习之路---自定义控件的属性
- GDAL综合整理--6:GDAL部分类说明
- 输入输出重定向 2>&1
- PowerDesigner技巧
- 编辑文章 - 博客频道 - CSDN.NET
- V4L2 soc camera 分析 - 系统架构图
- 菜鸟的安卓实习之路----TextWatcher的三个函数
- ORACLE 中SCHEMA的概念以及数据库,表空间,数据文件等的区别
- php程序安全
- openwrt针对RT5350代码下载,配置和编译
- GDAL综合整理--7:GDAL实用工具简介
- C#事件
- Java中常用的判空操作
- JMeter结果树响应数据中文乱码解决办法
- 数据库几种Top子句的使用方法