1. 程式人生 > >Android核心分析之GUI框架的原理

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 
版權宣告:本文為博主原創文章,轉載請附上博文連結!