分享五種Android常用布局方式
現(xiàn)在Android非常瘋狂,所以網(wǎng)上關(guān)于Android學(xué)習(xí)的資料如雨后春筍般冒起來(lái),像這些基礎(chǔ)的東西更是多如牛毛,我會(huì)把用過(guò)的東西碰到的困難和怎么解決的記錄下來(lái),一來(lái)可以供自己復(fù)習(xí)萬(wàn)一以后又碰到類似的問(wèn)題就可以直接拿來(lái)看下。二來(lái)可以給初學(xué)者一點(diǎn)小小的幫助。
Android布局是應(yīng)用界面開(kāi)發(fā)的重要一環(huán),在Android中,共有五種布局方式,分別是:FrameLayout(框架布
局),LinearLayout (線性布局),AbsoluteLayout(絕對(duì)布局),RelativeLayout(相對(duì)布局),TableLayout(表格布局)
一、FrameLayout
這個(gè)布局可以看成是墻腳堆東西,有一個(gè)四方的矩形的左上角墻腳,我們放了第一個(gè)東西,要再放一個(gè),那就在放在原來(lái)放的位置的上面,這樣依次的放,會(huì)蓋住原來(lái)的東西。這個(gè)布局比較簡(jiǎn)單,也只能放一點(diǎn)比較簡(jiǎn)單的東西。
二、LinearLayout
線性布局,這個(gè)東西,從外框上可以理解為一個(gè)div,他首先是一個(gè)一個(gè)從上往下羅列在屏幕上。每一個(gè)LinearLayout里面又可分為垂直布局
(android:orientation="vertical")和水平布局(android:orientation="horizontal"
)。當(dāng)垂直布局時(shí),每一行就只有一個(gè)元素,多個(gè)元素依次垂直往下;水平布局時(shí),只有一行,每一個(gè)元素依次向右排列。
linearLayout中有一個(gè)重要的屬性 android:layout_weight="1",這個(gè)weight在垂直布局時(shí),代表行距;水平的時(shí)候代表列寬;weight值越大就越大。
三、AbsoluteLayout
絕對(duì)布局猶如div指定了absolute屬性,用X,Y坐標(biāo)來(lái)指定元素的位置android:layout_x="20px"
android:layout_y="12px" 這種布局方式也比較簡(jiǎn)單,但是在垂直隨便切換時(shí),往往會(huì)出問(wèn)題,而且多個(gè)元素的時(shí)候,計(jì)算比較麻煩。
四、RelativeLayout
相對(duì)布局可以理解為某一個(gè)元素為參照物,來(lái)定位的布局方式。主要屬性有:
相對(duì)于某一個(gè)元素
android:layout_below="@id/aaa" 該元素在 id為aaa的下面
android:layout_toLeftOf="@id/bbb" 改元素的左邊是bbb
相對(duì)于父元素的地方
android:layout_alignParentLeft="true" 在父元素左對(duì)齊
android:layout_alignParentRight="true" 在父元素右對(duì)齊
還可以指定邊距等,具體詳見(jiàn)API
五、TableLayout
表格布局類似Html里面的Table。每一個(gè)TableLayout里面有表格行TableRow,TableRow里面可以具體定義每一個(gè)元素,設(shè)定他的對(duì)齊方式 android:gravity="" 。
每一個(gè)布局都有自己適合的方式,另外,這五個(gè)布局元素可以相互嵌套應(yīng)用,做出美觀的界面。
到此,本文的全部教程到此結(jié)束了,希望對(duì)大家學(xué)習(xí)android常用布局有所幫助。
相關(guān)文章
Android模仿實(shí)現(xiàn)閑魚首頁(yè)的思路與方法
這篇文章主要給大家介紹了Android模仿實(shí)現(xiàn)閑魚首頁(yè)的思路與方法,文中通過(guò)示例代碼介紹的非常詳細(xì),并在文末給出了完整的代碼供大家參考學(xué)習(xí),需要的朋友們下面來(lái)一起看看吧。2017-04-04Kotlin標(biāo)準(zhǔn)庫(kù)函數(shù)使用分析及介紹
Kotlin提供了一個(gè)系統(tǒng)庫(kù),是Java庫(kù)的增強(qiáng)。其中有很多函數(shù)在適配了Java的類型和方法同時(shí)使用Kotlin的語(yǔ)法。其中一些底層的函數(shù) 是使用比較廣泛的2022-09-09Android中g(shù)ravity、layout_gravity、padding、margin的區(qū)別小結(jié)
這篇文章主要介紹了Android中g(shù)ravity、layout_gravity、padding、margin的區(qū)別小結(jié),需要的朋友可以參考下2014-08-08Android6.0 storage目錄sd卡存儲(chǔ)的路徑創(chuàng)建詳解
這篇文章主要介紹了Android6.0 storage目錄sd卡存儲(chǔ)的路徑創(chuàng)建的相關(guān)資料,需要的朋友可以參考下2017-01-01Android實(shí)現(xiàn)側(cè)滑菜單DrawerLayout
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)側(cè)滑菜單DrawerLayout,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-05-05Android View與Compose互相調(diào)用實(shí)例探究
這篇文章主要介紹了Android View與Compose互相調(diào)用,Compose 具有超強(qiáng)的兼容性,兼容現(xiàn)有的所有代碼,Compose 能夠與現(xiàn)有 View 體系并存,可實(shí)現(xiàn)漸進(jìn)式替換2023-01-01Android實(shí)現(xiàn)自定義驗(yàn)證碼輸入框效果(實(shí)例代碼)
這篇文章主要介紹了Android實(shí)現(xiàn)自定義驗(yàn)證碼輸入框效果,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01Android實(shí)現(xiàn)伸縮彈力分布菜單效果的示例
本文介紹下在Android中實(shí)現(xiàn)伸縮彈力分布菜單效果。這種效果比較炫酷,有需要的朋友可以參考一下。2016-10-10Android 7.0中拍照和圖片裁剪適配的問(wèn)題詳解
這篇文章主要介紹了Android 7.0中拍照和圖片裁剪適配的相關(guān)問(wèn)題,文中通過(guò)示例代碼介紹的很詳細(xì),對(duì)大家具有一定的參考價(jià)值,有需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-02-02