Java层 1.Looper构建了消息队列MessageQueue2.Message的成员target关联Handler3.Handler的成员...
事件分发分捕获和执行两个阶段 事件传递,即捕获,就是执行dispatchTouchEvent()方法,再执行onInterceptTouchEv...
ViewRootImpl的performTraversals() 启动Activity后,视图添加,绘制。是在ViewRootImpl.setV...
为什么要使用Binder? 性能方面 在移动设备上(性能受限制的设备,比如要省电),广泛地使用跨进程通信对通信机制的性能有严格的要求,Binde...
动画分类 补间动画 旋转、位移、透明度、缩放 属性动画 同样的属性动画也可以做到对View进行缩放、移动、旋转以及改变透明度;除此以外,它还能改...
View 和 SurfaceView 的区别 View 主要适用于主动更新的情况下,而 SurfaceView 主要适用于被动更新,例如频繁地刷...
Window 1、创建PhoneWindow2、设置Window的callback,用户的触摸 & 键盘等输入事件就是通过此接口回调到 Acti...
SurfaceFlinger服务是在System进程中启动的,并且负责统一管理设备的帧缓冲区。SurfaceFlinger服务在启动的过程中,会...
屏幕缓存 Android 4.1 以前一直沿用double-buffer 双缓冲技术,也就是两块显示 Buffer,back buffer用于C...