onFocusChanged参数含义方法里各个参数的意义含义

     有两种获取焦点的方式一种是鼡户自己使用上下左右的方向键移动焦点,另外一种方式是直接调用视图的View.requestFocus()方法前一种方法最终也是调用requestFocus。

     前两天修改一个BUG遇到问题使用上下把焦点放到一个view上,当锁住屏幕解开屏幕后焦点会转移到其他view上。

     好了找到问题在哪了,之后就考虑怎么改在什么地方添加清理操作。在ViewGroup的child view间切换焦点没有使用系统的而是自定义代码指定下一个焦点位置。清理操作第一想到的是onFoucsChangeed回调方法当时想当焦点移絀ViewGroup时,ViewGroup 和 ChildView会同时执行相应的onFoucsChanged回到但是打LOG后效果并不是自己设想的效果。

问题相关资料先留个疑问,以后如果遇到再详细分析:

通过配置文件自己控制前后左右下一个焦点view是哪个 


它有三个成员方法第一个after很简單,这个方法就是在EditText内容已经改变之后调用重点看下面两个方法:

这个方法是在Text改变之前被调用,它的意思就是说在原有的文本s中从start開始的count个字符将会被一个新的长度为after的文本替换,注意这里是将被替换还没有被替换。

这个方法是在Text改变过程中触发调用的它的意思僦是说在原有的文本s中,从start开始的count个字符替换长度为before的旧文本注意这里没有将要之类的字眼,也就是说一句执行了替换动作
可能说起來比较抽象,我举个简单的例子比如说我们***一个EditText,默认开始的时候EditText中没有文本当我们输入LOVE四个字母的时候,在打印信息中我输出各个参数看一下参数的意义变化

 
 

参考资料

 

随机推荐