android常用布局介紹_第1頁
android常用布局介紹_第2頁
android常用布局介紹_第3頁
android常用布局介紹_第4頁
android常用布局介紹_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Android常用布局介紹郵箱:android_主講人:老羅 簡單的說:Activity就是布滿整個窗口或者懸浮于其他窗口上的交互界面。在一個應(yīng)用程序中通常由多個Activity構(gòu)成,都會在Manifest.xml中指定一個主的Activity,如下設(shè)置 為了適應(yīng)各種界面風(fēng)格,Android提供了5種布局,這5種布局分別是: FrameLayout(框架布局)、LinearLayout(線性布局)、RelativeLayout(相對布局)、TableLayout(表格布局)、AbsoluteLayout(絕對布局)等。 利用以上5種布局我們可以再手機(jī)屏幕上隨心所欲的擺放各種控件。布局(Layo

2、ut) 在Android系統(tǒng)中,何的可視化控件都是從android.view.View繼承的。開發(fā)人員可以使用兩種方法來創(chuàng)建視圖。 第一種:是使用XML方式來配置View的相關(guān)屬性,然后裝載這些View 第二種:是完全使用java代碼來創(chuàng)建ViewAndroid視圖的創(chuàng)建 Xml布局文件是android系統(tǒng)中定義的視圖常用方法,所有的布局文件必須包含在res/layout目錄中。定義XML布局的命名和定義注意事項如下: xml布局文件必須是以xml文件名結(jié)束,命名必須是符合java的規(guī)范 每一個xml布局文件的根節(jié)點(diǎn)可以是任意的控件標(biāo)簽 xml布局文件的根節(jié)點(diǎn)必須是包含android的命名空間

3、,命名空間必須是xmlns:android=http:/ 為xml文件布局中的標(biāo)簽指定的id需要使用這樣的格式: android:id=“+id/標(biāo)簽名稱“該標(biāo)記會保存在R文件中 每一個視圖的id都會在R類中生成與之對應(yīng)的變量,因此視圖ID的值必須是符合java規(guī)范的使用XML布局文件定義視圖 如果是要使用xml布局文件,通常需要oncreate方法中使用setContentView來加載指定的xml布局文件 Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);

4、setContentView(R.layout.main); 獲得xml布局文件注意一下幾點(diǎn): 使用findViewById之前需要使用setContentView先加載xml文件、布局文件會拋出異常信息。也就是說findViewById方法要在setContentView之后才能使用。 所有的的xml文件布局文件的視圖id都在R類生成相對應(yīng)的變量使用XML布局文件定義視圖 Android表示單位長度的方式通常有三種表示方式。 px:表示屏幕實(shí)際的象素。例如,320*480的屏幕在橫向有320個象素,在縱向有480個象素。 dp(dip): 是屏幕的物理尺寸。大小為1英寸的1/72。 sp(與

5、刻度無關(guān)的像素):與dp類似,但是可以根據(jù)用戶的字體大小首選項進(jìn)行縮放。Android中長度單位介紹 設(shè)計技巧: 如果設(shè)置表示長度、高度等屬性時可以使用dp 或sp。但如果設(shè)置字體,需要使用sp。 dp是與密度無關(guān),sp除了與密度無關(guān)外,還與scale無關(guān) 如果使用dp和sp,系統(tǒng)會根據(jù)屏幕密度的變化自動進(jìn)行轉(zhuǎn)換。Android中長度單位設(shè)計技巧 layout_margin是控件邊緣相對于父控件的邊距Android布局中常用屬性介紹android:layout_marginTopandroid:layout_marginTopandroid:layout_marginLeftandroid:l

6、ayout_marginButtomandroid:layout_margin相對于父控件的間隔 layout_padding是控件內(nèi)容相對于控件邊緣的邊距Android布局中常用屬性介紹Android:paddingTopAndroid:paddingButtomAndroid:paddingRightAndroid:paddingLeft gravity和layout_gravity的區(qū)別 android:gravity與android:layout_gravity。 他們的區(qū)別在于:android:gravity用于設(shè)置View組件的對齊方式,而android:layout_gravit

7、y用于設(shè)置Container組件的對齊方式Android布局中常用屬性介紹 線性布局是最常用的布局線性布局在xml文件中使用來定義 線性布局可以分為水平和垂直的方向的布局,可以通過android:orientation=“vertical”來定義方向,該屬性可以有horizontal和vertical兩個方向。 標(biāo)簽中有一個很重要的屬性gravity,該屬性用于控制布局中視圖的位置,如果設(shè)置多個值需要使用 | 進(jìn)行分隔,屬性如下:線性布局LinearLayout android:layout_width和android_layout_height屬性說明線性布局LinearLayout屬性屬性

8、描述描述wrap_content填滿父控件的空白fill_parentmatch_parent表示大小剛好足夠顯示當(dāng)前控件里的內(nèi)容Android中fill_parent和match_parent是一樣的。在Android2.2中啟動match_parent,不用fill_parent android:layout_weight權(quán)重的描述 layout_weight 用于給一個線性布局中的諸多視圖的重要度賦值。 所有的視圖都有一個layout_weight值,默認(rèn)為零,意思是需要顯示 多大的視圖就占據(jù)多大的屏幕空 間。若賦一個高于零的值,則將父視 圖中的可用空間分割,分割大小具體取決于每一個視圖

9、的layout_weight 值以及該值在當(dāng)前屏幕布局的整體 layout_weight值和在其它視圖屏幕布 局的layout_weight值中所占的比率而定。線性布局LinearLayout 使用線性布局實(shí)現(xiàn)如下界面線性布局LinearLayout 框架布局是最簡單的布局方式、所有添加到這個布局中的視圖都是以層疊的方式顯示。第一個添加到框架布局中的視圖顯示在最底層,最后一個被放在最頂層,上一層的視圖會覆蓋下一層的視圖,因此框架布局類似堆棧布局??蚣懿季諪rameLayOut屬性值屬性值描述描述top將視圖放到屏幕的頂端Buttom將視圖放到屏幕的底端Left將視圖放在屏幕的左側(cè)Right將視

10、圖放在屏幕的右側(cè)Center_vertical將視圖按照垂直方向居中顯示horizontal_vertical將視圖按照水平方向居中顯示 RelativeLayout可以設(shè)置某一個視圖相對于其他視圖的位置,這些位置可以包括上下左右等RelativeLayout相對布局屬性屬性說明說明android:layout_below在某元素的下方 android:layout_above在某元素的的上方 android:layout_toLeftOf 在某元素的左邊 android:layout_toRightOf在某元素的右邊 所謂絕對布局(AbsoluteLayout),是指屏幕中所有控件的擺放由開

11、發(fā)人員通過設(shè)置控件的坐標(biāo)來指定,控件容器不再負(fù)責(zé)管理其子控件的位置。由于子控件的位置和布局都是通過坐標(biāo)來指定,因此AbsoluteLayout類中沒有特殊的屬性和方法。 可以通過android:layout_x和android:layout_y屬性可以設(shè)置視圖的橫坐標(biāo)和縱坐標(biāo)的位置。絕對布局AbsoluteLayout 在TableLayout布局中,一個列的寬度由該列中最寬的那個單元格指定,而表格的寬度是由父容器指定的。在TableLayout中,可以為列設(shè)置三種屬性: Shrinkable:如果一個列被標(biāo)識為Shrinkable,則該列的寬度可以進(jìn)行收縮,以使表格能夠適應(yīng)其父容器的大小。

12、Stretchable:如果一個列被標(biāo)識為Stretchable,則該列的寬度可以進(jìn)行拉伸,以使填滿表格中的空閑空間。 Collapsed:如果一個列被標(biāo)識為Collapsed,則該列會被隱藏 注意:一個列可以同時具有Shrinkable屬性和Stretchable屬性,在這種情況下,該列的寬度將任意拉伸或收縮以適應(yīng)父容器TableLayout布局 TableLayout繼承自LinearLayout類,除了繼承來自父類的屬性和方法,TableLayout類中還包含表格布局所特有的屬性和方法,如下表: 注意:TableLayout中所謂的列序號是從0開始計算的。setShrinkAllColumns和setStretchAllColumns實(shí)現(xiàn)的功能是將表格中的所有列設(shè)置為Shrinkable或Stretchable。TableLayout布局屬性名稱屬性名稱對應(yīng)方法對應(yīng)方法描述描述android:collapseColumn

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論