自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Android屏幕元素相關(guān)概念詳解

移動開發(fā) Android
Android屏幕元素中的分層結(jié)構(gòu)都包含有什么內(nèi)容?在這里我們就能詳細的了解這些基本概念,以幫助我們對此方面的學習。

Android手機操作系統(tǒng)中有很多比較重要的知識點需要我們在學習的過程中詳細了解以方便我們將來的應(yīng)用。比如Android屏幕元素等等。在這里就會為大家詳細介紹一下有關(guān)Android屏幕元素分層結(jié)構(gòu)。#t#

android.app.Activity

對于一個Android應(yīng)用來說,android.app.Activity類實例是一個最基本的功能單元。一個Activity實例可以做很多的事情,但是它本身無法顯示在屏幕上,而是借助于Viewgroup和View,這兩個才是Android平臺上最基本的兩個用戶界面表達單元。

android.view.ViewGroup

ViewGroup是一個特殊的View類,它繼承于android.view.View。它的功能就是裝載和管理下一層的View對象和ViewGroup對象。ViewGroup是布局管理器(layout)及view容器的基類。
ViewGroup中,還定義了一個嵌套類ViewGroup.LayoutParams。這個類定義了一個顯示對象的位置、大小等屬性,view通過LayoutParams中的這些屬性值來告訴父級,它們將如何放置。

在這里,繼承于ViewGroup的一些主要的布局類如下:

1、FrameLayout:最簡單的一個布局對象。它里面只顯示一個顯示對象。Android屏幕元素中所有的顯示對象都將會固定在屏幕的左上角,不能指定位置。但允許有多個顯 示對象,但后一個將會直接在前 一個之上進行覆蓋顯示,把前一個部份或全部擋?。ǔ呛笠粋€是透明的)。

2、LinearLayout:以單一方向?qū)ζ渲械娘@示對象進行排列顯示,如以垂直排列顯示,則布局管理器中將只有一列;如以水平排列顯示,則布局管理器中將只有一行。同時,它還可以對個別的顯示對象設(shè)置顯示比例。

3、TableLayout:以擁有任意行列的表格對顯示對象進行布局,每個顯示對象被分配到各自的單元格之中,但單元格的邊框線不可見。

4、AbsoluteLayout:允許以坐標的方式,指定顯示對象的具體位置,左上角的坐標為(0, 0),向下及向右,坐標值變大。這種布局管理器由于顯示對象的位置定死了,所以在不同的設(shè)備上,有可能會出現(xiàn)最終的顯示效果不一致。

5、RelativeLayout:允許通過指定顯示對象相對于其它顯示對象或父級對象的相對位置來布局。如一個按鈕可以放于另一個按鈕的右邊,或者可以放在布局管理器的中央。
在Android中,提供了很多的布局管理器,這里也不一一列舉,開發(fā)者可以根據(jù)實際需要,選擇合適的布局管理器。

android.view.View

View是所有view類的基類,一個view通常占用Android屏幕元素上的一個矩形區(qū)域,并負責繪圖及事件處理。View是所有窗體部件的基類,是為窗體部件服務(wù)的,這里的窗體部件即UI控件,如一個按鈕或文本框。Android已經(jīng)為我們提供了一系列的標準UI控件供我們直接使用,同時,我們也可以通過繼承于 View類或View的子類,來實現(xiàn)我們自定義的UI控件。

要定制我們自己的UI控件,需要重載View類中的一些方法,以下表格列出View提供出來的,供重載的方法,這些方法不必都要重載,但至少要實現(xiàn)onDraw(android.graphics.Canvas)方法。

當你為一個 activty 添加一個可見的 view, 并且運行這個activty時,android通常情況下會自動按照下列順序來觸發(fā)view的相關(guān)事件

 

  1. onAttachedToWindow   
  2. onMeasure   
  3. onSizeChanged   
  4. onLayout   
  5. onDraw   

對于Android應(yīng)用中的一個屏幕,Android屏幕元素是按層次結(jié)構(gòu)來描述的。要將一個屏幕元素層次樹綁定在一個屏幕上顯示,Activity會調(diào)用它的 setContentView()方法并且傳入這個層次樹的根節(jié)點引用。當Activity被激活并且獲得焦點時,系統(tǒng)會通知activity并且請求根節(jié)點去計算并繪制樹,根節(jié)點就會請求它的子節(jié)點去繪制它們自己。

Android屏幕元素中每個樹上的ViewGroup節(jié)點會負責繪制它的子節(jié)點。ViewGroup會計算它的有效空間,布局所有的子顯示對象,并最終調(diào)用所有的子顯示對象的 Draw()方法來繪制顯示對象。各個子顯示對象可以向父對象請求它們在布局中的大小和位置,但最終決定各個子顯示對象的大小和位置的是父對象。

責任編輯:曹凱 來源: CSDN
相關(guān)推薦

2010-01-28 16:45:44

Android單線程模

2009-12-29 17:25:36

Silverlight

2009-12-28 16:28:35

WPF元素類型樣式

2010-01-25 15:10:08

Android組件

2010-01-06 19:22:43

.NET Framew

2009-12-21 15:33:07

WCF集合元素

2009-12-21 17:05:59

WCF自托管宿主

2010-01-05 16:15:05

.NET Framew

2010-02-26 14:39:27

WCF服務(wù)寄宿

2010-01-05 10:29:43

.NET Framew

2010-01-27 15:29:25

Android屏幕大小

2011-08-18 16:03:48

數(shù)據(jù)切分MySQL

2020-10-30 09:00:00

JavaScriptJavaScript引前端

2010-01-05 16:31:45

.NET Framew

2010-01-05 14:04:53

.NET Framew

2010-01-07 11:28:44

VB.NET Hash

2010-01-28 16:59:55

Android SMS

2010-01-26 17:00:31

Android生命周期

2010-01-25 14:13:36

Android菜單系統(tǒng)

2009-03-24 08:27:02

AndroidGoogle移動os
點贊
收藏

51CTO技術(shù)棧公眾號