ConstraintLayout带你深入了解约束布局的使用

本文详细介绍了ConstraintLayout的各种高级特性,包括居中布局的两种方式、goneMargin属性的应用、GROUP的使用、圆弧定位、尺寸配置、 Barrier 屏障约束、Layer 功能以及 Chains 链的创建和权重分配,帮助开发者更好地理解和运用约束布局。
摘要由CSDN通过智能技术生成

在这里插入图片描述

1.关于约束布局居中如何实现
(1)
app:layout_constraintStart_toStartOf=“parent”
app:layout_constraintEnd_toEndOf=“parent”
(2)
app:layout_constraintLeft_toLeftOf=“parent”
app:layout_constraintRight_toRightOf=“parent”
一般通过Start和End(left和right)指定同一个控件就可以实现居中,相信聪明的你举一反三也知道通过设置top和bottom也可以实现居中了吧。
下面说一下这2种方式虽然实现的效果相同,但也有区别,往下面看

首先我们读一段文字,都是从左到右,于是对于我们来说start和left是一个概念。但是还有些文化,像阿拉伯等是从右到左的,这两者就截然相反了。所以为了你的程序更广泛适用,还是用startend吧。

2.goneMargin属性:当约束控件不可见时,可以设置与父布局的距离
这里是居中textview的顶部在text1的底部,当text1布局显示的时候,居中textview相距text1的顶部是20dp,这时候goneMarginTop属性并不会生效(顾名思义gon eMargin),效果如下图所示:

在这里插入图片描述
但有些情况text1会被设置为gone(不占位置且不可见),那此时居中textview就会相聚它的父布局20dp,如果想要不改变位置,就使用
app:layout_goneMarginTop="自己计算,看需求"属性即可

3.GROUP
若你想要某一些控件同步控制其visibility(可见性),用Group,只需要设置下面一句app:constraint_referenced_ids=“text1,text2”/>,在设置Group的visibility就可以同步控制。但是点击事件是不可以的。
在这里插入图片描述
4.圆弧定位
可以用来放小图标
它的作用就是你可以相对于锚点View的中心位置,声明一个角度和距离(半径)来确定View的位置

layout_constraintCircle 是关联的锚点View的id
layout_constraintCircleRadius View的中心点与关联的锚点View的中心点的距离(圆弧半径)
layout_constraintCircleAngle View的中心点与关联的锚点View的中心点的角度关系(0到360度)
官方示意图:
在这里插入图片描述

代码效果如下图所示:
在这里插入图片描述
3.layout_constraintWidth_default
layout_constraintWidth_default的三种取值
1.默认是spread,意思是占用所有的符合约束的空间
2.percent, 顾名思义就是按

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

橘子先生z

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值