【Android學習專題】視覺介面篇:Android布局及屬性歸總(查詢用)



【Android學習專題】視覺介面篇:Android布局及屬性歸總(查詢用)

SkySeraph Feb 14th 2012  SZ

Email:skyseraph00@163.com 



常見布局

LinearLayout       線性布局          子元素任意,組織成一個單一的水平或垂直行,默認為水平方向
TableLayout        表格布局          子元素為<TableRow>,一個TableRow就代表TableLayout中的一行
RelativeLayout      相對布局          子元素任意
AbsoluteLayout     絕對布局         子元素任意
FrameLayout       幀布局        控件會放到左上角


公共控件屬性

android:id = "@+id/XXX"                 程序中通過ID來關聯控件
android:layout_width/android:layout_height         控制控件的寬度/高度,可選"wrap_content"/"fill_parent"/"match_parent"/具體像素
android:layout_marginLeft/Right/Top/Bottom = “5dip”   各邊距離其他控件的距離
android:gravity                      控件中內容的顯示位置
android:textSize                      空間中文本大小
android:textColor = "#ff123456"             空間中文本顏色,以#開頭,前兩位為透明值,后六位為顏色值
android:textStyle = "normal"/"bold"/"italic"        控件文本風格,也可用“|”將屬性組合起來
android:text                       控件文本內容
android:sigleLine                     如果設置為真的話,則將控件的內容在同一行當中進行顯示
android:background = "@drawable/window_bg"      控件背景
android:scaleType                     控制圖片方式。
  CENTER /center          按圖片的原來size居中顯示,當圖片長/寬超過View的長/寬,則截取圖片的居中部分顯示
  CENTER_CROP / centerCrop    按比例擴大圖片的size居中顯示,使得圖片長(寬)等於或大於View的長(寬)
  CENTER_INSIDE / centerInside  將圖片的內容完整居中顯示,通過按比例縮小或原來的size使得圖片長/寬等於或小於View的長/寬
  FIT_CENTER / fitCenter       把圖片按比例擴大/縮小到View的寬度,居中顯示
  FIT_END / fitEnd         把圖片按比例擴大/縮小到View的寬度,顯示在View的下部分位置
  FIT_START / fitStart       把圖片按比例擴大/縮小到View的寬度,顯示在View的上部分位置
  FIT_XY / fitXY            把圖片不按比例擴大/縮小到View的大小顯示
  MATRIX / matrix         用矩陣來繪制,動態縮小放大圖片來顯示。
android:src = "@drawable/window_bg"      引用資源/控件圖片,用於ImageButton,ImageView等需要圖片的控件
android:visibility                 控件可見性,"visible"表可見,"invisible"表不可見,但在布局中占用的位置還在,"gone"表不可見,完全從布局中消失
android:padding                 空間中內容與控件邊框的距離
android:weight                   指定畫完控件后剩余空間的分配所占比例
android:ems/maxEms/minEms           控制控件寬度
EditText的android:hint              設置EditText為空時輸入框內的提示信息


LinearLayout特有屬性

android:orientation=horizontal/vertical     布局中子控件排布方向,默認為水平方向
android:layout_weight             子元素屬性,描述子元素在父元素剩余空間中占有的大小比例,關於此屬性,詳見http://sinye.iteye.com/blog/1068204


TableLayout特有屬性(子元素都是橫向排列,並且寬高一致)

android:orientation        屬性值恆為horizontal
android:layout_width     屬性值恆為MATCH_PARENT

android:layout_height     屬性值恆為WRAP_CONTENT
android:stretchColums    指定當一個TableRow中的控件不夠填充滿整個寬度時,將會被拉伸的條目


RelativeLayout特有屬性

android:layout_alignParentLeft/Right/Top/Bottom = "true/false"     緊貼父控件,與父控件對齊方式
android:layout_alignWithParentIfMissing                 如果對應的兄弟元素找不到的話就以父元素做參照物
android:orientation                            布局中子控件排布方向
android:layout_toRightOf/toLeftOf/below/above="@id/id-name"     控件和某個控件的位置關系,其中在左邊/右邊包含但不僅限於緊靠,在上方/下方包含但不僅限於正上方/正下方
android:layout_alignTop/Bottom/Left/Right/Baseline="@id/id-name"  控件與其他控件對齊
android:layout_centerHorizontal/Virtical/InParent           指定控件位於水平/垂直/父控件的中間位置


AbsoluteLayout特有屬性

android:layout_X/Y           控件的X,Y坐標,屏幕左上角為坐標原點(0,0)


注意點 

1  android:gravity設置控件中內容的對齊方式,android:layout_gravity設置控件本身的對齊方式
2  當android:gravity和android:padding同時做用時,先按gravity進行排布,再按padding調整
3  android:padding指定內邊距(站在父view的角度描述問題,它規定它里面的內容必須與這個父view邊界的距離),

    android:layout_margin指定外邊距(站在自己的角度描述問題,規定自己和其他(上下左右)的view之間的距離,如果同一級只有一個view,那么它的效果基本上就和padding一樣了)
4  Drawable文件夾里面的圖片命名是不能大寫的
5  單個控件的風格設置通過在布局文件的控件中添加style屬性,整個Activity或者App的主題設置通過在manifest文件中的Theme設置


Refs

淺談Android五大布局(一)——LinearLayout、FrameLayout和AbsoulteLayout - 熊貓82 - 博客園

淺談Android五大布局(二)——RelativeLayout和TableLayout - 熊貓82 - 博客園
Android成長之路-布局詳解 - - 博客頻道 - CSDN.NET
Android成長之路-好玩的相對布局 - - 博客頻道 - CSDN.NET
android layout_weight講解 - 路漫漫其修遠兮 吾將上下而求索 - ITeye技術網站
android_paddingLeft與android_layout_marginLeft的區別_fynancywin的空間_百度空間
padding與margin的區別 - Lily's Android tech Blog - 博客頻道 - CSDN.NET
新浪微博布局學習——活用RelativeLayout - 農民伯伯 - 博客園
RelativeLayout ? { Android學習指南 }
Android 利用addView 讓Activity 動態加入多個View 物件 _ 第三極 _ 移動開發者
Android2.2中添加的match_parent和fill_parent沒有區別 - ·沒有風雨躲得過,沒有坎坷不必走· - 博客頻道 - CSDN.NET
Android布局之RelativeLayout(相對布局)_hoyah_百度空間
Android布局之AbsoluteLayout(坐標布局)_hoyah_百度空間
Android布局之LinearLayout(線性布局)_hoyah_百度空間
Android布局之TableLayout(表格布局)_hoyah_百度空間
Android布局之FrameLayout(單幀布局)_hoyah_百度空間
LinearLayout、RelativeLayout、FrameLayout居中顯示 - Android - 紅黑聯盟
Android-TableLayout布局 - 個人筆記 - 51CTO技術博客
Android入門第五篇之TableLayout (二) - hellogv的專欄 - 博客頻道 - CSDN.NET
Android入門第四篇之TableLayout (一) - hellogv的專欄 - 博客頻道 - CSDN.NET
Android入門第三篇之RelativeLayout、FrameLayout - hellogv的專欄 - 博客頻道 - CSDN.NET
Android入門第二篇之LinearLayout、AbsoluteLayout - hellogv的專欄 - 博客頻道 - CSDN.NET
Android成長之路-編碼實現軟件界面 - - 博客頻道 - CSDN.NET
Android騰訊微薄客戶端開發八_微博查看(轉播,對話,點評) - Android - mobile - ITeye論壇
android復雜布局示例 - meetrice - 博客園
Android筆記:Button居中_水平居中_垂直居中(總結) - Mars2639——求知de路上 - 博客頻道 - CSDN.NET
android布局屬性詳解 - C'est la vie - 博客園
【原創】常見的四種布局使用及其中常用控件屬性_洛朗朗_新浪博客
android布局屬性大全 - A_Big_Monkey - ITeye技術網站

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM