Android入门之基本布局
??? 既然是線性排列,肯定就不僅只有一個方向,即android:orientation屬性指定的排列方向vertical/horuzontal
? ?
??? android:layout_gravity屬性和android:gravity屬性的區別:
??????? layout_gravity用于指定控件在布局中的對齊方式;
??????? gravity用于指定文字在控件中的對齊方式;
??? LinearLayout中另一個非常重要的屬性:android:layout_weight;
?? 如:
2、RelativeLayout又稱作相對布局,也是一種非常常用的布局。和LinearLayout的排列規則不同,RelativeLayout顯得更加隨意一些,它可以通過相對定位的方式讓空間出現在布局的任何位置。?? 如:
?? RelativeLayout中其他重要屬性:? android:layout_above可以讓一個控件位于另一個控件的上方;
? android:layout_below可以讓一個控件位于另一個控件的下方;
? android:layout_toLeftOf表示讓一個控件位于另一個控件的左側;
? android:layout_toRightOf表示讓一個控件位于另一個控件的右側;
? android:layout_alignLeft表示讓一個控件的左邊緣和另一個控件的左邊緣對齊;
? android:layout_alignRight表示讓一個控件的右邊緣和另一個控件的右邊緣對齊;
? android:layout_alignTop表示讓一個控件的上邊緣和另一個控件的上邊緣對齊;
? android:layout_alignBottom表示讓一個控件的下邊緣和另一個控件的下邊緣對齊;
3、FrameLayout又稱作幀布局,它相比于前兩種布局就簡單太多了,因此它的應用場景也少了很多。這種布局沒有方便的定位方式,所有控件都會默認擺放在布局的左上角。
???? 如:
4、百分比布局
??? 前面介紹的3種布局都是從Android1.0版本中開始支持的,一直沿用到現在,可以說是滿足了絕大多數場景的界面設計需求。不過細心的i會發現,只有LinearLayout支持使用layout_weight屬性來實現按比例指定控件大小的功能,其他兩種布局都不支持。為此,Android引入了一種全新的布局來解決此問題---百分比布局。在這種布局中,我們可以不再使用wrap_content、match_parent登方式來指定控件的大小,而是允許直接指定控件在布局中所占的百分比,這樣的話就可以輕松實現平分布局甚至是任意比例分割布局的效果了。
? 此布局為FrameLayout和RelativeLayout進行了功能的擴展,提供了PercentFrameLayout和PercentRelativeLayout這兩個全新的布局。
? 百分比布局使用方法:
?????????? 需要在項目的build.gradle中添加百分比布局庫的依賴,就能保證百分比布局在Android所有系統版本上的兼容性了。
?????????? 打開app/build.gradle文件,在dependencies閉包中添加如下內容:
???????????????? dependencies{
?????????????????????????? compile filteTree(dir:'libs',include:['*.jar'])
?????????????????????????? compile 'com.android.support:appcompat-v7:24.2.1'
?????????????????????????? compile 'com.android.support:percent:24.2.1 '
?????????????????????????? testCompile 'junit:junit:4.12'
????????????????? }\
?????????? 需要注意的是,每當修改了任何gradle文件時,Android Studio都會彈出一個Sync Now的提示,這個提示告訴我們,gradle文件自上次同步之后又發生了變化,需要再次同步才能使項目正常工作。這里只需要點擊Sync Now就可以了。
??????????? 示例:
???????????? 注意:老版本的Android studio可能在布局文件中出現錯誤,可以直接忽視,Android studio 2.2版本已經修復這個問題
總結
以上是生活随笔為你收集整理的Android入门之基本布局的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android 入门之Intent应用
- 下一篇: android sina oauth2.