博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android常用的UI布局
阅读量:5098 次
发布时间:2019-06-13

本文共 4033 字,大约阅读时间需要 13 分钟。

一、LinearLayout:线性布局

   用来控制其子View以水平或垂直方式展开显示 

   重要属性

      orientation(方向)
      layout_weight(权重)
   layout_weight(权重)的值
      =0(默认值):指定多大空间就占据多大的空间
      >0:将父视图中的可用空间进行分割, 值越大权重就越大, 占据的比例就会越大
   Layout_weight的使用场景
      将布局的宽度或高度平均分成几个等份
      垂直方向上占用中间所有空间 或 水平方向上占用中间所有空间

   android:gravity 与 android:layout_gravity的区别

    android:gravity是指定本元素的子元素相对它的对齐方式。
    android:layout_gravity是指定本元素相对它的父元素的对齐方式

    案例参考:http://www.cnblogs.com/zhangs1986/archive/2013/01/17/2864237.html

    

    代码

7 8
13 14
22 23 24
32 33 34
42 43 44
52 53
54 55
60 61
68 69 70
77 78 79
86 87 88
95 96
97 98

 

二、RelativeLayout:相对布局

    相对布局: 用来控制其子View以相对定位的方式进行布局显示

    相对布局是最灵活, 最强大,也是学习难度最大的布局
    相对布局相关属性比较多:
      兄弟视图之间: 同方向对齐, 反方向对齐
      与父视图之间: 同方向对齐, 居中
    相对兄弟视图定位
      同方向对齐属性

        android:layout_alignBaseline  该控件的Baseline与给定ID控件的Baseline对齐

        android:layout_alignLeft      该控件的左边与给定ID控件的左边对齐
        android:layout_alignTop    该控件的顶部与给定ID控件的顶部对齐
        android:layout_alignRight   该控件的右边与给定ID控件的右边对齐
        android:layout_alignBottom    该控件的底部与给定ID控件的底部对齐
      反方向对其属性
        android:layout_toLeftOf   将该控件置于给定ID控件的左边
        android:layout_toRightOf 将该控件置于给定ID控件的右边
        android:layout_above  将该控件置于给定ID控件的上面
        android:layout_below  将该控件置于给定ID控件的下面
    相对父视图定位
      与父视图同方向对齐
        android:layout_alignParentLeft   该控件的左边与父控件的左边对齐
        android:layout_alignParentTop   该控件的顶部与父控件的顶部对齐
        android:layout_alignParentRight   该控件的右边与父控件的右边对齐
        android:layout_alignParentBottom  该控件的底部与父控件的底部对齐
      相对父视图居中属性
        android:layout_centerInParent 垂直水平居中
        android:layout_centerVertical 垂直居中
        android:layout_centerHorizontal 水平居中

    案例:

      

    代码:

三、FrameLayout:帧布局

    帧布局中的每一个子View都代表一个画面,默认以屏幕左上角作为( 0,0 )坐标

    按定义的先后顺序依次逐屏显示 , 后面出现的会覆盖前面的画面
    通过子View的android:layout_gravity?属性来指定子视图的位置

属性名称 对应方法 描述
android:foreground setForeground(Drawable) 设置绘制在所有子控件之上的内容
android:foregroundGravity setForegroundGravity(int) 设置绘制在所有子控件之上内容的gravity属性

    在FreamLayout中,子控件是通过栈来绘制的,所以后添加的子控件会被控制在上层。

    案例:参考:http://www.cnblogs.com/moonsilvering/archive/2011/12/30/2308091.html

      

 

    代码:

1: 
2:
3:
FrameExample
4:
大的
5:
中的
6:
小的
7:
3)在项目res/values目录下新建一个colors.xml,在其中输入如下代码。 1:
2:
3:
#FF0000
4:
#00FF00
5:
#0000FF
6:
#FFFFFF
7:
4)打开项目res/layout目录下的main.xml文件,将其中已有的代码替换为如下代码。 1:
2:
7: 8:
15:
16: 17:
24:
25: 26:
33:
34: 35:

 一下为常用的一些基本属性

  常用基本属性四、属性的划分

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

    id 为控件指定相应的ID

    @+id/idname 添加一个ID
    layout_width 指定当前视图的宽度
    layout_height 指定当前视图的宽度
    text 指定控件当中显示的文字
    textSize 指定控件当中字体的大小
    background 指定该控件所使用的背景(图片|颜色)
    layout_gravity 控件本身相对于父视图的位置
    grivity 指定控件中的内容的基本位置
  内边距与外边距(公共属性)
    内边距:
      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

     

 

转载于:https://www.cnblogs.com/rivercast/p/6111333.html

你可能感兴趣的文章
MySQL更改默认的数据文档存储目录
查看>>
替代微软IIS强大的HTTP网站服务器工具
查看>>
6.5 案例21:将本地数据库中数据提交到服务器端
查看>>
PyQt5--EventSender
查看>>
android 通过AlarmManager实现守护进程
查看>>
Sql Server 中由数字转换为指定长度的字符串
查看>>
win7下把电脑设置成wlan热
查看>>
Java 多态 虚方法
查看>>
jquery.validate插件在booststarp中的运用
查看>>
java常用的包
查看>>
PHP批量覆盖文件并执行cmd命令脚本
查看>>
Unity之fragment shader中如何获得视口空间中的坐标
查看>>
支持向量机——内核
查看>>
MFC注册热键
查看>>
万能的SQLHelper帮助类
查看>>
如何在 Terminal 内可以“用惯用的编辑器”快速打开“目前正在做”的专案(project)呢?...
查看>>
uboot分析:uboot的启动过程分析
查看>>
tmux的简单快捷键
查看>>
springboot笔记04——读取配置文件+使用slf4j日志
查看>>
[Swift]LeetCode653. 两数之和 IV - 输入 BST | Two Sum IV - Input is a BST
查看>>