Android 布局及常用属性

一、常用属性

  • 控件宽度:layout_width

wrap_content match_parent

  • 控件高度:layout_height

wrap_content match_parent

  • 设置背景色:background
  • 设置文本:text
  • 字体大小:textSize
  • 文本颜色:textColor
  • textAlignment(文本对齐方式):

center

textEnd viewEnd

inherit gravity textStart viewStart

  • 外边距:

layout_margin

layout_marginLeft layout_marginRight

layout_marginTop layout_marginBottom

  • 内边距:

padding

paddingLeft paddingRight

paddingTop paddingBottom

二、FrameLayout(帧布局)

  • 前景图像:foreground
  • 前景图像位置:foregroundGravity

三、LinearLayout(线型布局)

  • 排列方向:orientation

vertical horizontal

  • 按比例布局:layout_weight
  • 控制子元素对齐方式:gravity

left right top bottom

center center_horizontal center_vertical

  • 控制组件在父容器中的位置:layout_gravity(layout_gravity属性会覆盖gravity属性)

top bottom left right center center_vertical center_horizontal

  • (?)(分割线属性)divider、showDividers、dividerPadding

四、RelativeLayout(相对布局)

gravity、ignoreGravity

根据父容器定位:

layout_alignParentLeft、layout_alignParentRight

layout_alignParentTop、layout_alignParentBottom

layout_centerHorizontal、layout_centerVertical、layout_centerInParent

Android 布局及常用属性

根据兄弟组件定位:

layout_toLeftOf、layout_toRightOf

layout_above、layout_below

layout_alignLeft、layout_alignRight

layout_alignTop、layout_alignBottom

五、TableLayout(表格布局)

  • 行容器:TableRow
  • 隐藏列:collapseColumns
  • 拉伸列:stretchColumns
  • 收缩列:shrinkColumns
  • 跳过:layout_column(?)
  • 合并单元格:layout_span(?)

六、AbsoluteLayout(绝对布局)

  • 组件x坐标:layout_x
  • 组件y坐标:layout_y

七、GridLayout(网格布局)

  • 设置行数:rowCount
  • 设置列数:columnCount
  • 设置组件所在行:layout_row
  • 设置组件所在列:layout_colum
  • 设置组件横跨行数:layout_rowSpan
  • 设置组件横跨列数:layout_columnSpan

设置组件横跨行列时,需要设置属性layout_gravity=”fill”

八、总结

带align的属性都是边界对齐方式

带layout的属性都使用在单个组件内

Original: https://www.cnblogs.com/weijun5461/p/16214727.html
Author: 4asd9
Title: Android 布局及常用属性

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/571810/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Google搜索为什么不能无限分页?

    这是一个很有意思却很少有人注意的问题。 当我用Google搜索 MySQL这个关键词的时候,Google只提供了 13页的搜索结果,我通过修改url的分页参数试图搜索第 14页数据…

    Java 2023年6月7日
    080
  • java8两个list根据某一属性取交集

    class User { public User(Integer id, String name) { this.id = id; this.name = name; } priv…

    Java 2023年5月29日
    080
  • JVM内存结构

    JVM内存结构 1、java源码编译成java字节码 2、整体内存结构堆:https://blog.csdn.net/weixin_43304253/article/details…

    Java 2023年6月13日
    086
  • Fluent-Validator 业务校验器

    在互联网行业中,基于Java开发的业务类系统,不管是服务端还是客户端,业务逻辑代码的更新往往是非常频繁的,这源于功能的快速迭代特性。在一般公司内部,特别是使用Java web技术构…

    Java 2023年6月9日
    078
  • 终端直接执行.java文件

    1、首先编译java文件 javac xx.java 「最好先建一个空文件夹,把xx.java文件放入」 2、然后执行 java xx 「这样就会直接执行了,不需要使用Idea,e…

    Java 2023年6月6日
    094
  • 使用重试机制保证SpringBoot应用的稳定性

    前言 没有人能保证自己的系统不出错,同样,在调用第三方系统时,也不能保证能够100%的成功。 往往会因为程序逻辑、网络中断、边界值等各种各样的问题导致服务失败。 在不同的业务领域对…

    Java 2023年6月7日
    095
  • 一文搞懂Kafka的基本原理及使用

    Kafka的基本原理及使用 一、基本概念及原理 1、Kafka特点 Kafka 是一个分布式的流式平台,流式平台包括以下三个特点: 发布和订阅消息(流),类似于一个消息队列或企业消…

    Java 2023年6月8日
    098
  • 2021总结、2022展望

    2021总结 2021总结 参与开源 Skywalking Incubator-Shenyu 学习内容 2022展望 深入学习Golang及相关技术栈 参与公司Oteam 组织后端…

    Java 2023年6月5日
    072
  • synchronized原理剖析

    synchronized原理剖析 并发编程存在什么问题? 1️⃣ 可见性 可见性:是指当一个线程对共享变量进行了修改,那么另外的线程可以立即看到修改后的最新值。 案例演示:一个线程…

    Java 2023年6月15日
    064
  • 在k8s中导出jvm内存错误dump文件到OSS

    加参数 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=logs/test.dump 可以实现在 jvm发生内存错误后 会生成du…

    Java 2023年6月16日
    080
  • 【2022暑期集训】最小生成树专题题解

    题目背景 Farmer John 被选为他们镇的镇长!他其中一个竞选承诺就是在镇上建立起互联网,并连接到所有的农场。当然,他需要你的帮助。 题目描述 FJ 已经给他的农场安排了一条…

    Java 2023年6月5日
    070
  • python 反序列化

    Python-反序列化函数使用 pickle.dump(obj, file) : 将对象序列化后保存到文件 pickle.load(file) : 读取文件, 将文件中的序列化内容…

    Java 2023年6月6日
    075
  • C# 反射 操作列表类型属性

    本文介绍对列表进行创建及赋值的反射操作 我们现在有TestA、TestB类,TestA中有TestB类型列表的属性List,如下: 下面通过反射,给TestA.List进行赋值,o…

    Java 2023年5月30日
    098
  • 删除链表结点类问题

    删除链表结点 NO1. 删除链表倒数第 k个结点 给定一个链表,删除链表的倒数第 n 个节点并返回链表的头指针。要求:空间复杂度 (O(1)),时间复杂度 (O(n)) 如果倒数第…

    Java 2023年6月15日
    098
  • Pycharm安装opencv与 无法安装PIL以及安装Pillow之后依然报错的解决办法

    Pycharm 安装opencv pycharm里自带了很方便的安装第三方库的方法,不需要自己去下载opencv包再pip install 在pycharm的File/Settin…

    Java 2023年6月9日
    094
  • Google支付和服务端验证

    因为公司业务需求,需要使用google的登录和支付。google支付分为订阅和应用内购买两种,笔者使用的是应用内购买这种方式,这里将整个google支付和支付验证的流程记录下来。 …

    Java 2023年5月30日
    077
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球