一个GUI系统,有几大块功能要做:输入(Event)、GDI(输出,比如skia库)、Widget(基本控件+容器类控件+布局类控件)、Window(容纳Widgets,提供绘制场所),有了以上基本模块,就能搭建基本的UI了。需要的复杂机制有:事件传递机制、Window和Widget剪切机制、Widget绘制机制、主题机制、多语言机制、资源管理机制、对第三方库的支持机制(典型如opengl)、GDI效率、特效机制。
Android系统中,View就是我们所说的Widget,也可称为控件。View可分为三类:基本View、容器View、布局View。
典型的基本View如:ImageView、TextView;
(基本的View就是负责各个形态的View展示)
容器类View如:ListView、GridView、ViewGroup(ViewGroup这个名称不规范,应该叫做ContainerView或者GroupView,这样直接能理解成本身是View,且有Group能力);
(容器类View与特定的布局相关联,有独特的组织View的形式和接口,具有View的管理功能)
布局类View如:FrameLayout、GridLayout(Layout后缀的是布局类View,布局类View一定具有View的管理能力,所以一定是ViewGroup的子类,也就是容器类的子类,在管理的基础上具备了布局功能)
(布局类View作用是布局,显而易见)
本文简单说明Android系统View的简单绘制流程
1. Activity和View如何关联?
参考文章:http://blog.csdn.net/dragondog/article/details/6455176
2. 第一次完整刷新时机?
3. 如何主动刷新?