前言:
https://blog.csdn.net/yu805894501/article/details/92801025
Android常用佈局
Android中常用的佈局有LinearLayout(線性佈局)、RelativeLayout(相對佈局)、FrameLayout(幀佈局)、TableLayout(表格佈局)、AbsoluteLayout(絕對佈局)、GridLayout(網格佈局)、 ConstraintLayout(約束佈局)
接下來只介紹比較常用的兩種佈局,其他佈局將在後期使用時具體介紹。
注意:
在xml文件中註釋使用<!—註釋內容-->進行註釋,註釋不可嵌套註釋,不可嵌套<>標籤
LinearLayout(線性佈局)
線性佈局是使其內部的組件進行水平或垂直排列的一種佈局。案例參照項目LayoutDemo中的activity_linear_layout.xml佈局文件
屬性:
1、android:layout_width:寬度,值有:match_parent(充滿父佈局)、fill_parent(充滿父佈局)、wrap_content(自適應內部組件大小)
2、android:layout_height:高度,值有:match_parent(充滿父佈局)、fill_parent(充滿父佈局)、wrap_content(自適應內部組件大小)
3、android:orientation:排列方式,值有:vertical(垂直排列)、horizontal(水平排列)
4、android:layout_weight:權重,線性佈局內部組件按照比例進行分佈空間(其他用途詳見後期更新)
5、gravity:內部組件的居中方式
6、layout_gravity:組件自身在父佈局中所處的位置,當父容器爲橫向排列時,使用該屬性的子組件只能進行垂直居中,當父容器爲垂直排列時,使用該屬性的子組件只能進行水平居中
備註:詳情見例子LayoutDemo項目中的activity_linear_layout.xml
RelativeLayout(相對佈局)
相對佈局,顧名思義就是可以相對於彼此或者與父佈局相關的屬性進行排列。
如果不對佈局添加任何定位屬性的話,內部組件將默認定位在左上角,並且多個組件將會重疊。
基本屬性:
layout_width:寬度,值有:match_parent(充滿父佈局)、fill_parent(充滿父佈局)、wrap_content(自適應內部組件大小)
layout_height:高度,值有:match_parent(充滿父佈局)、fill_parent(充滿父佈局)、wrap_content(自適應內部組件大小)
- 根據父容器進行排列:
layout_alighParentLeft:爲true時左對齊
layout_alighParentRight:爲true時右對齊
layout_alighParentTop:爲true時頂部對齊
layout_alighParentBottom:爲true時底部對齊
layout_centerHorizontal:爲true時水平居中
layout_centerVertical:爲true時垂直居中
layout_centerInParent:爲true時完全居中
- 根據兄弟組件進行定位
layout_toLeftOf:居指定組件左邊
android:layout_toRightOf:居指定組件右邊
android:layout_above:居指定組件上邊
android:layout_below:居指定組件下邊
android:layout_alignTop:與指定組件上邊緣對齊
android:layout_alignBottom:與指定組件下邊緣對齊
android:layout_alignLeft:與指定組件左邊緣對齊
android:layout_alignRight:與指定組件右邊緣對齊
備註:詳情見例子LayoutDemo項目中的activity_relative_layout.xml
使用佈局及常用控件實現註冊界面
演示見CommonControls項目下的“登陸界面”,源碼在CommonControls/ contrls/RegisterActivity.java
代碼已上傳百度雲
鏈接:https://pan.baidu.com/s/1W3AhypxBwoysKgmknqnaTw
提取碼:ldk3
加入我的行列:
(嘿嘿嘿,點擊這裏關於我哦,分享小知識):https://www.jianshu.com/p/7d19f0df5b6b