編輯:關於Android編程
Android中有五大布局: LinerLayout(線性布局)、RelativeLayout(相對布局)、Tablelayout(表格布局)、
用來控制控件的擺放。
Framelayout(層疊布局)、AbsoulteLayout(絕對布局)。
常用的是線性布局和相對布局,其他的不常用,有些甚至說不會用到。
行單列的結構,每一行只會有一個元素,而不論這個元素的寬度為多少;如果是水平排列,那麼將是一個單行N列的結構。
線性布局,顧名思義,無非是水平或者垂直分布來排列控件。其中的屬性:
android:orientation(方向):Vertical(垂直)、Horizontal(水平)
android:layout_weight: 常用比例切割空白:平分空白、左右顯示、獨占空白。比較重要,之後會詳解。
RelativeLayout按照各子元素之間的位置關系完成布局。在此布局中的子元素裡與位置相關的屬性將生效。
注意在指定位置關系時,引用的ID必須在引用之前,先被定義,否則將出現異常。
RelativeLayout是Android五大布局結構中最靈活的一種布局結構,比較適合一些復雜界面的布局。
相對於控件(位於指定控件id的哪個位置):
above:位於某id控件的上方
below:位於某id控件的下方
toleftof:位於某id控件的左方
torightof:位於某id控件的右方
相對於父容器(位於整個布局的位置)
alignparentTop:位於整個布局的上方。
alignparentRight:位於整個布局的右方。
alignparentBottom:位於整個布局的下方。
alignparentLeft:位於整個布局的左方。
centerVertical:垂直居於整個布局
centerHorizontal:水平居於整個布局
centerInParent:既垂直又居中與整個布局。
適用於N行N列的布局格式。一個TableLayout由許多TableRow組成,一個TableRow就代表TableLayout中的一行。
TableRow是LinearLayout的子類,ablelLayout並不需要明確地聲明包含多少行、多少列,而是通過TableRow,以及其他組件來
控制表格的行數和列數,
TableLayout繼承了LinearLayout,因此他完全可以支持LinearLayout所支持的全部XML屬性,除此之外TableLayout還支持以下
屬性:
XML屬性:andriod:collapseColumns
相關用法:setColumnsCollapsed(int,boolean)
說 明:設置需要隱藏的列的序列號,多個用逗號隔開
XML屬性:android:shrinkColumns
相關用法:setShrinkAllColumns(boolean)
說 明:設置被收縮的列的序列號,多個用逗號隔開
XML屬性:android:stretchColimns
相關用法:setSretchAllColumnds(boolean)
說 明:設置允許被拉伸的列的序列號,多個用逗號隔開
FrameLayout是五大布局中最簡單的一個布局,可以說成是層布局方式。在這個布局中,整個界面被當成一塊空白備用區域,所
有的子元素都不能被指定放置的位置,它們統統放於這塊區域的左上角,並且後面的子元素直接覆蓋在前面的子元素之上,將前面
的子元素部分和全部遮擋。如下,第一個TextView被第二個TextView完全遮擋,第三個TextView遮擋了第二個TextView的部分
位置。
霓虹燈效果的制作運用的就是層疊布局。
在此布局中的子元素的android:layout_x和android:layout_y屬性將生效,用於描述該子元素的坐標位置。屏幕左上角為坐標原點
(0,0),第一個0代表橫坐標,向右移動此值增大,第二個0代表縱坐標,向下移動,此值增大。在此布局中的子元素可以相互重
疊。在實際開發中,通常不采用此布局格式,因為它的界面代碼過於剛性,以至於有可能不能很好的適配各種終端。
margin系列 外邊距
padding系列 內邊距
Android:layout_margin就是設置view控件的上下左右邊框的額外空間
android:padding是設置控件裡面內容相對view控件的邊框的距離
在LinearLayout、RelativeLayout、TableLayout中,這2個屬性都是設置都是有效的
在FrameLayout中,android:layout_margin是無效的,因為FrameLayout裡面的元素都是從左上角開始繪制的
在AbsoluteLayout中,沒有android:layout_margin屬性
Unity提供兩種方式讓Developer的Android設備連接Profiler進行性能分析: 1、通過wifi,Android設備和計算機處於同一個Wlan中。 2、
只是途中有些問題折騰了一下,比如openssl.cnf如何來的,這個文件在編譯完openssl後,應該openssl根目錄下/apps/demoCA有個,可以把他拷貝到o
Batterystats & Battery Historian Walkthrough Battery Historian Charts Android應用的
ViewPage使用之一就是輪播廣告,就以此為出發點,來詳細解析一下ViewPage的使用和加載機制。首先直接上一個damo,在代碼中我也直接給出了詳細的解釋。然後,再在