Android LinearLayout线性布局详解(系列教程六)

桃扇骨 2024-04-01 16:03 232阅读 0赞

目录

一、LinearLayout布局简介

二、LinearLayout基本使用

三、LinearLayout常用属性

android:orientation

android:gravity

android:layout_gravity

android:layout_weight


一、LinearLayout布局简介

LinearLayout布局又称作线性布局,是Android开发中一种非常常用的布局。LinearLayout布局会将它所包含的控件在水平或者垂直方向上依次排列。如果是水平排列,垂直方向上只能有一个控件,如果是垂直排列,则水平方向上只能有一个控件。

二、LinearLayout基本使用

我们在布局文件中使用LinearLayout线性布局。

  1. <!--android:orientation:设置线性布局的排列方向,vertical为垂直排列,horizontal为水平排列-->
  2. <!--以下是垂直方向上排列三个按钮-->
  3. <LinearLayout
  4. android:id="@+id/llayTest"
  5. android:layout_width="300dp"
  6. android:layout_height="wrap_content"
  7. android:layout_centerHorizontal="true"
  8. android:layout_marginTop="20dp"
  9. android:orientation="vertical">
  10. <Button
  11. android:id="@+id/button"
  12. android:layout_width="80dp"
  13. android:layout_height="35dp"
  14. android:background="@drawable/btn_style"
  15. android:text="按钮一" />
  16. <Button
  17. android:id="@+id/button2"
  18. android:layout_width="80dp"
  19. android:layout_height="35dp"
  20. android:layout_marginTop="10dp"
  21. android:background="@drawable/btn_style"
  22. android:text="按钮二" />
  23. <Button
  24. android:id="@+id/button3"
  25. android:layout_width="80dp"
  26. android:layout_height="35dp"
  27. android:layout_marginTop="10dp"
  28. android:background="@drawable/btn_style"
  29. android:text="按钮三" />
  30. </LinearLayout>

三、LinearLayout常用属性

android:orientation

用来设置LinearLayout中子控件的排列方向。vertical为垂直排列,horizontal为水平排列。

android:gravity

LinearLayout的排列方式默认是从上到下或者是从左到右排列,如果想让子控件对齐右边缘或者底部边缘,可以使用gravity属性进行设置。gravity是指当前控件里面子控件的摆放位置,如果当前控件是容器,则设置的是容器里面子控件的摆放位置;如果是控件,则设置的是控件里面内容的摆放位置。

003b7031796242c5aca781ec08bdcb9d.png

android:layout_gravity

该属性一般设置在子控件上,是指当前控件在父控件里面的摆放位置,父控件设置的gravity的优先级要低于子控件设置的layout_gravity。

5b198702152348bfb3aed4ee2090d7bb.png

android:layout_weight

该属性需要加在LinearLayout的子控件中,其作用是按比例来分配控件占用父控件的大小。

当未设置layout_weight属性时,三个按钮不会占满整个线性布局的高度,底部会有部分空间空出来。

7c90580c4e9945b482f3449840ce2df8.png

当给按钮二设置android:layout_weight=”1”时,按钮二会占满除开按钮一和按钮三的全部剩余空间。

515e84231b7342228d353321816a61e0.png

当给按钮二和按钮三都设置android:layout_weight=”1”时,按钮二和按钮三会平分除开按钮一的全部剩余空间。

0f574df9d5d948acb27cf8d76f166c71.png

当给按钮二设置android:layout_weight=”1”,按钮三设置android:layout_weight=”2”时,按钮二和按钮三会按1:2的大小占用除开按钮一的全部剩余空间。

c098e1d9b0e442cb883323af060e27e0.png

原创不易,点个赞再走呗。。。

597730b807d246e281ce88a19c0968e8.jpeg

发表评论

表情:
评论列表 (有 0 条评论,232人围观)

还没有评论,来说两句吧...

相关阅读