View工作原理(二)导致View重建原因
来源:互联网 发布:sql 时间戳转换成日期 编辑:程序博客网 时间:2024/05/17 21:55
导致View重建的原因有三个:
1、视图本身内部状态变化引起重绘;
2、view树内部添加或者删除子view;
3、View本身的大小及可见性发生变化。
这三种情况最后都直接或者间接的调用到了三个方法,invalidate()、requestLayout()和requestFocus(),而这三个函数最终都会调用到ViewRoot中的schueduleTraversals()方法,该方法发起一个异步消息,消息处理中调用performTraversals()开始对整个View进行重新遍历。
能导致调用invalidate()方法的包含三种情况:当应用程序改变视图显示属性时,调用setVisibility();当改变视图Selected状态时,调用setSelected();当改变视图Enable状态时,调用setEnable()。
导致调用requestLayout()方法的情况包括两种:当应用程序改变视图显示属性时,调用setVisibility(),由于显示或者不显示将影响其他兄弟视图的位置,因此会调用到requestLayout();第二种是应用程序直接或者间接调用该函数,间接调用是指应用程序调用了View类的其他函数,从而间接调用到requestLayout()。
requestFocus()一般由程序直接调用,间接调用是指当用户按“上/下”、“左/右”键时,相关的处理逻辑会间接的调用该方法。
0 0
- View工作原理(二)导致View重建原因
- View工作原理(二)导致View重建原因
- android- View工作原理(二)导致View重建原因
- View的工作原理(二)----View的工作流程
- 读书笔记--View的工作原理(二)
- [Android] View 工作原理(二)
- View的工作原理(二)
- Android View框架总结(二)View工作原理
- View的工作原理(自定义View)
- View的工作原理(二)之 View的工作流程
- Android——View的工作原理(二)
- android-----View工作原理系列(二)
- View 工作原理(一)
- View视图绘制流程,View工作原理(二)
- View的工作原理(二)--从measure说View的测量流程
- View的工作原理(二)View的三大流程
- scroll view 工作原理
- View的工作原理
- cc.formatStr
- Git 版本控制命令符
- html页面 拨打电话
- linux 安装python2.7.11
- 使用fastq-dump下载SRA数据
- View工作原理(二)导致View重建原因
- 上传插件webuploader.js的使用示例
- Zoho Reports让数字图形化
- View工作原理(三)视图大小计算过程(measure过程)
- Python扫描文件夹&&分析文件
- Android HandlerThread使用方法
- 自定义 NSOperation
- self = [super init]意义
- 多线程(2)