Android核心分析之GUI框架的原理

在Android中Window 是个弱化了的概念,更多的表现在View这个概念上。在很大程度上,Android 的View的概念可以代替Microsoft Window 这个概念。不过是换了一个侧重点有点不一样而已。

原始GUI基本框架

首先我们从Android 的SDK 外特性空间开始,在编写Actvitiy 时,我们都是面对的处 理函数:OnXXXX(),例如有按键按下就是OnKeyDown等,在这个过程中系统做了怎样 的处理?要详细的理解这个过程,我们就需要理解Andoid 的View 管理,窗口系统,消息系统和输入系统。我们还是从最本质的地方开始,Android 作为一种嵌入式的图形用户界面系统,它的基本原理与一般GUI 的原理是相同的,同时也是遵循GWES(图形窗口事件系统)的一般规律,总体上Android 就是管理用户输入和系统屏幕输出的一个系统。其实GWES这个名称更能体现GUI 的基本实质要素:图形、窗口、事件。

1. 一般GUI的基本组成 
GUI的实现就是对上面提到的三个基本要素的管理,根据这这三个要素的特性及其涉及的范围,GUI 在总体上可以分为三部分:

事件管理器
窗口管理器
GDI(绘制与GDI逻辑对象管理) 

(1) 事件管理器 
收集系统消息,转换并分发系统消息和用户消息给各个窗口对象。 
(2)窗口管理器: 
- 管理窗口的创建,销毁 
- 窗口的绘制 
- 活动窗口,输入焦点的切换 
- 窗口间关系的管理 
- 控件,菜单实现 
(3)GDI 
- 上下文设备管理 
- 上下文设备对象管理:字体,画笔等 
- 图形绘制:点、线,填充等 
- 图象操作:位传送、位图操作

2.系统体系构架及其数据流的大体走向

在本质上GUI就是管理用户输入和屏幕输出,我们从上面的体系结构可以看到GUI的 这两大数据流的基本流向,这也决定了Android GUI 设计的最基本的着眼点。

Android 弱化了窗口的概念,着重使用View的概念。所以Android 的基本组成可以从上面的图修改成如下的组成:


--------------------- 
作者:春水煎茶 
来源:CSDN 
原文:https://blog.csdn.net/zhiyahan/article/details/46852967 
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/GarfieldEr007/article/details/84500773