




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
實訓Android北京電子科技職業學院1Android布局管理器2線性布局管理3常用屬性和調整1Android布局管理器Android布局管理器布局(Layout)的概念是針對Activity的,Activity就是布滿整個Android設備的窗口或者懸浮于其他窗口上的交互界面。在一個應用程序中通常由多個Activity構成,每個需要顯示的Activity都需要在AndroidManifest.xml文件之中聲明。通常情況下,開發人員可以使用兩種方式來創建UI組件,一種方式是使用XML方式來配置UI組件的相關屬性,然后裝載這些UI組件,這也是最常用的方式。但是有些特殊情況下,需要動態生成UI組件,則需要使用第二種方式,完全使用Java代碼來創建UI組件。Android布局管理器XML布局文件是Android系統中定義的Layout的常用方式,所有布局文件必須包含在res/layout目錄中,且必須符合Java的命名規范。當在res/layout目錄下新增了布局文件之后,R.java文件會自動收錄該布局資源,Java代碼可通過setContentView方法在Activity中顯示該Layout。setContentView(R.layout.<資源名稱>);
Android布局管理器在布局文件中可以指定UI組件的android:id屬性,該屬性的屬性值代表該組件的唯一標識。通過Activity.findViewById()訪問,并且findViewById()必須在setContentView加載xml文件之后使用,否則會拋出異常。
findViewById(R.id.<視圖的ID名>)
Android布局管理器Android應用的絕大部分UI組件都放在android.widget包及其子包、android.view包及其子包中,Android應用的所有UI組件都繼承了View類。View類還有一個重要的子類:ViewGroup,ViewGroup類是所有布局管理器的父類。ViewGroup容器控制其子組件的分布依賴于ViewGroup.LayoutParams、ViewGroup.MarginLayoutParams兩個內部類。
Android布局管理器ViewGroup.LayoutParams提供兩個XML屬性設定組件的大小。android:layout_height:指定該子組件的基本高度;android:layout_width:指定該子組件的基本寬度。這兩個屬性有三個基本值,這兩個屬性有三個特定的值:fill_parent:指定組件的高度、寬度與父容器組件的一樣。match_parent:與fill_parent一樣,Android2.2開始推薦使用。warp_content:內容包裹。
Android布局管理器對于View的尺寸,android提供了三種單位供選擇使用:px:像素。dp:dpi,表示屏幕實際的像素。sp:與scale無關的像素,與dp類似。尺寸單位選擇的技巧:如果設置長度、高度等屬性時可以使用dp或sp,但是如果設置字體,需要使用px。如果使用dp或sp,系統會根據屏幕密度的變化進行轉換。Android布局管理器為了適應各種界面風格,Android提供了五種布局規范,利用這五種布局,基本上可以在設備上隨心所欲的擺放任何UI組件,這五種布局分別是:FrameLayout(幀布局)LinearLayout(線性布局)RelativeLayout(相對布局)TableLayout(表格布局)AbsoluteLayout(絕對布局)線性布局(LinearLayout)Android布局管理器為了適應各種界面風格,Android提供了五種布局規范,利用這五種布局,基本上可以在設備上隨心所欲的擺放任何UI組件,這五種布局分別是:FrameLayout(幀布局)LinearLayout(線性布局)RelativeLayout(相對布局)TableLayout(表格布局)AbsoluteLayout(絕對布局)線性布局(LinearLayout)2線性布局管理線性布局管理線性布局是將放入其中的組件按照垂直方向布局(如圖3所示)或水平方向來布局(如圖4所示),也就是控制放入其中的組件橫向或縱向排列。在線性布局中,每一行(針對垂直排列)或每一列(針對水平排列)中只能放一個組件,并且Android的線性布局不會自動換行,當組件一個一個排列到窗體的邊緣后,后面的組件將不會被顯示出來。線性布局管理線性布局是將放入其中的組件按照垂直方向布局(如圖3所示)或水平方向來布局(如圖4所示),也就是控制放入其中的組件橫向或縱向排列。在線性布局中,每一行(針對垂直排列)或每一列(針對水平排列)中只能放一個組件,并且Android的線性布局不會自動換行,當組件一個一個排列到窗體的邊緣后,后面的組件將不會被顯示出來。3常用屬性和調整常用屬性和調整線性布局最重要的屬性是:設置排列方向android:orientation屬性android:orientation=”vertical”是垂直排列android:orientation=”horizontal”是水平排列注意:Android的線性布局不會換行,當組件一個挨著一個的排列到頭之后,剩下的組件將不會被顯示出來android:gravity(對齊方式),設定LinearLayout中包含UI組件的對齊方式,其選項很多,常用上(top)、下(bottom)、左(left)、右(right)、居中(center)。常用屬性和調整常用屬性和調整常用屬性和調整
android:layout_weight="1"通過設置控件的layout_weight屬性以控制各個控件在布局中的相對大小,線性布局會根據該控件layout_weight值與其所處布局中所有控件layout_weight值之和的比值為該控件分配占用的區域。在水平布局的LinearLayout中有4個TxtView,這4個TextView的layout_weight屬性值都為1,那么這4個TextView的大小將拉伸到總大小的四分之一。如果layout_weight指為0,控件會按原大小顯示,不會被拉伸;對于其余layout_weight屬性值大于0的控件,系統將會減去layout_weight屬性值為0的控件的寬度或者高度,再用剩余的寬度或高度按相應的比例來分配每一個控件顯示的寬度或高度。常用屬性和調整
權重最基本的用法就是
對線性布局指定方向(水平或垂直)上剩余空間分配的一個規則,先把規定的大小占完,再來按比例分配剩余空間特殊情況:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論