常用的UI布局

概述

  • 布局本身是不能显示出任何数据, 它可以包含一些子视图, 并控制子视图的布局
常用的Layout
	LinearLayout
	RelativeLayout
	FrameLayout
	ListView
	GridView
	其他

LinearLayout

  • 线性布局: 用来控制其子View以水平或垂直方式展开显示
  • 重要属性
    – orientation:方向(即水平布局 or 垂直布局)
    – layout_weight:权重
  • 理解LinearLayout权重
    – layout_weight(权重)的值
    (1) =0(默认值): 指定多大空间就占据多大的空间
    (2)>0: 将父视图中的可用空间进行分割, 值越大权重就越大, 占据的比例就会越大
    – Layout_weight的使用场景
    (1) 将布局的宽度或高度平均分成几个等份或等比例的分成几个等份
    (2) 垂直方向上占用中间所有空间 或 水平方向上占用中间所有空间(设置layout_weight=1即可)

RelativeLayout

  • 相对布局: 用来控制其子View以相对定位的方式进行布局显示
  • 相对布局是最灵活, 最强大,也是学习难度最大的布局
  • 相对布局相关属性比较多
    – 兄弟视图之间: 同方向对齐, 反方向对齐
    – 与父视图之间: 同方向对齐, 居中

FrameLayout

  • 帧布局中的每一个子View都代表一个画面,默认以屏幕左上角作为(0,0)坐标,按定义的先后顺序依次逐屏显示,后面出现的会覆盖前面的画面
  • 通过子View的android:layout_gravity属性来指定子视图的位置

常用视图标签属性

属性的划分

  • 针对任何View的属性
    – 常用的最基本属性
    – 内边距属性 padding
    – 外边距属性 margin
  • 只针对RelativeLayout的属性
    – 反方向对齐属性 to/above/below
    – 同方向对齐属性 align
    – 相对父视图的属性 alignparent/center
  • 只针对LinearLayout的属性
    – 权重属性 weight
    – 方向属性 oritation

针对任何View的属性

常用基本属性

属性名 作用
id 为视图对象指定相应的ID @+id/idname
layout_width 视图对象的宽度,必须指定
layout_height 视图对象的高度,必须指定
layout_gravity 控件本身相对于父视图的位置
grivity 指定控件中的内容的基本位置
background 指定该控件所使用的背景(图片或颜色)

内边距与外边距属性

在这里插入图片描述

  • 内边距属性
    – android:padding
    – android:paddingLeft
    – android:paddingTop
    – android:paddingRight
    – android:paddingBottom
  • 外边距属性
    – android:layout_margin
    – android:layout_marginLeft
    – android:layout_marginTop
    – android:layout_marginRight
    – android:layout_marginBottom

只针对RelativeLayout的属性

相对兄弟视图:同方向对齐属性

  • android:layout_alignLeft
  • android:layout_alignTop
  • android:layout_alignRight
  • android:layout_alignBottom

相对兄弟视图:反方向对齐属性

  • android:layout_toLeftOf
  • android:layout_toRightOf
  • android:layout_above
  • android:layout_below

相对父视图:同方向对齐属性

  • android:layout_alignParentLeft
  • android:layout_alignParentTop
  • android:layout_alignParentRight
  • android:layout_alignParentBottom

相对父视图:剧中对齐属性

  • android:layout_centerInParent
  • android:layout_centerVertical
  • android:layout_centerHorizontal
发布了13 篇原创文章 · 获赞 2 · 访问量 304

猜你喜欢

转载自blog.csdn.net/MOOG007/article/details/104748145