版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Android布局5大布局本課學(xué)習(xí)LinearLayout(線性布局)FrameLayout(單幀布局)RelativeLayout(相對(duì)布局)AbsoluteLayout(絕對(duì)布局)TableLayout(表格布局)淺談布局Android的界面是有布局和組件協(xié)同完成的,布局好比是建筑里的框架,而組件則相當(dāng)于建筑里的磚瓦。組件按照布局的要求依次排列,就組成了用戶所看見(jiàn)的界面。Android的五大布局分別是LinearLayout(線性布局)FrameLayout(單幀布局)RelativeLayout(相對(duì)布局)AbsoluteLayout(絕對(duì)布局)TableLayout(表格布局)LinearLayoutLinearLayout按照垂直或者水平的順序依次排列子元素,每一個(gè)
子元素都位于前一個(gè)元素之后。如果是垂直排列,那么將是一個(gè)N行單列的結(jié)構(gòu),每一行只會(huì)有一個(gè)元素,而不論這個(gè)元素的寬度為多少;如果是水平排列,那么將是一個(gè)單行N列的結(jié)構(gòu)。如果搭建兩行兩列的結(jié)構(gòu),通常的方式是先垂直排列兩個(gè)元素,每一個(gè)元素里再包含一個(gè)LinearLayout進(jìn)行水平排列。下面介紹上圖效果的實(shí)現(xiàn)代碼LinearLayoutandroid:layout_weight:,它用于描述該子元素在剩余空間中占有的大小比例。android:layout_weight值分別為1和2,那么第一個(gè)文本框?qū)⒄紦?jù)剩余空間的三分之二,第二個(gè)文本框?qū)⒄紦?jù)剩余空間中的三分之一。android:layout_weight遵循數(shù)值越小,重要度越高的原則。FrameLayoutFrameLayout是五大布局中最簡(jiǎn)單的一個(gè)布局,在這個(gè)布局中,整個(gè)界面被當(dāng)成一塊空白備用區(qū)域,所有的子元素都不能被指定放置的位置,它們統(tǒng)統(tǒng)放于這塊區(qū)域的左上角,
并且后面的子元素直接覆蓋在前面
的子元素之上,將前面的子元素部
分和全部遮擋。顯示效果如右,第一個(gè)TextView被第二個(gè)TextView完全遮擋,第三個(gè)TextView遮擋了第二個(gè)TextView的部分位置。FrameLayoutAbsoluteLayoutAbsoluteLayout是絕對(duì)位置布局。在此布局中的子元素的android:layout_x和android:layout_y屬性將生效,用于描述該子元素的坐標(biāo)位置。屏幕左上角為坐標(biāo)原點(diǎn)(0,0),第一個(gè)0代表橫坐標(biāo),向右移動(dòng)此值增大,第二個(gè)0代表縱坐標(biāo),向下移動(dòng),此值增大。在此布局中的子元素可以相互重疊。在實(shí)際開(kāi)發(fā)中,通常不采用此布局格式,因?yàn)樗慕缑娲a過(guò)于剛性,以至于有可能不能很好的適配各種終端。顯示效果如右:AbsoluteLayoutRelativeLayoutRelativeLayout按照各子元素之間的位置關(guān)系完成布局。在此布局中的子元素里與位置相關(guān)的屬性將生效。例如android:layout_below,android:layout_above等。子元素就通過(guò)這些屬性和各自的ID配合指定位置關(guān)系。注意在指定位置關(guān)系時(shí),引用的ID必須在引用之前,先被定義,否則將出現(xiàn)異常。RelativeLayout里常用的位置屬性如下:
android:layout_toLeftOf——該組件位于引用組件的左方
android:layout_toRightOf——該組件位于引用組件的右方
android:layout_above——該組件位于引用組件的上方
android:layout_below——該組件位于引用組件的下方android:layout_alignParentLeft——該組件是否對(duì)齊父組件的左端android:layout_alignParentRight——該組件是否齊其父組件的右端
android:layout_alignParentTop——該組件是否對(duì)齊父組件的頂部
android:layout_alignParentBottom——該組件是否對(duì)齊父組件的底部
android:layout_centerInParent——該組件是否相對(duì)于父組件居中
android:layout_centerHorizontal——該組件是否橫向居中
android:layout_centerVertical——該組件是否垂直居中RelativeLayoutTableLayoutTableLayout顧名思義,此布局為表格布局,適用于N行N列的布局格式。一個(gè)TableLayout由許多TableRow組成,一個(gè)TableRow就代表
TableLayout中的一行。TableRow是LinearLayout的子類,它的android:orientation屬性值恒為
horizontal,并且它的
android:layout_width和android:layout_height屬性值恒為
MATCH_PARENT和WRAP_CONTENT。所以它的子元素都是橫向排列,并且寬高一致的。這樣的設(shè)計(jì)使得每個(gè)TableRow里的子
元素都相當(dāng)于表格中的單元格一樣。在TableRow中,單元格可以為空,但是不能跨列。TableLayout布局練習(xí)布局常見(jiàn)問(wèn)題an
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 擠壓模擬課程設(shè)計(jì)
- 銀行支行的行政后勤工作綜述
- 寵物服務(wù)員工作總結(jié)
- 港口貨物裝卸合同三篇
- 三年級(jí)科學(xué)學(xué)科的教學(xué)工作總結(jié)
- 門診護(hù)士年終總結(jié)
- 【八年級(jí)下冊(cè)歷史】期中達(dá)標(biāo)測(cè)試卷
- 2024年統(tǒng)計(jì)員年終工作總結(jié)篇
- 2024-2025學(xué)年北京門頭溝區(qū) 初三(上)期末物物理試卷(含答案)
- 分包采購(gòu)委托合同(2篇)
- 2025年云南昆明經(jīng)濟(jì)技術(shù)開(kāi)發(fā)區(qū)投資開(kāi)發(fā)(集團(tuán))有限公司招聘筆試參考題庫(kù)附帶答案詳解
- HSE基礎(chǔ)知識(shí)培訓(xùn)
- 安徽省蚌埠市2023-2024學(xué)年高一上學(xué)期期末考試 地理 含答案
- GB/T 5483-2024天然石膏
- 2024年度托管班二人合伙協(xié)議書3篇
- 山東中醫(yī)藥大學(xué)中西醫(yī)臨床(專升本)學(xué)士學(xué)位考試復(fù)習(xí)題
- 2024-2025學(xué)年九年級(jí)語(yǔ)文上冊(cè)部編版期末綜合模擬試卷(含答案)
- 鄉(xiāng)村振興暨干部素質(zhì)提升培訓(xùn)班學(xué)習(xí)心得體會(huì)
- IATF16949:2024標(biāo)準(zhǔn)質(zhì)量手冊(cè)
- 飼料加工混凝土施工合同
- 會(huì)議會(huì)務(wù)服務(wù)投標(biāo)方案投標(biāo)文件(技術(shù)方案)
評(píng)論
0/150
提交評(píng)論