请选择 进入手机版 | 继续访问电脑版

ConstraintLayout笔记

2018-11-9 09:36
830
ConstraintLayout类似于RelativeLayout,主要用来做界面的操作。主要通过拖动来实现布局,基本上可以实现一层布局,提高性能。
提供了layout_constraintHorizontal_weight功能,补充了RelativeLayout不足。
没有match_parent,要使用0dp才行。
layout_constraint[当前控件被约束属性]_[参照控件属性]="[参照控件]"
比如
  1. [/code]代表当前控件的左边与父控件的左边对齐。
  2. [code]
复制代码
本控件的左边界与ID为cancel_button的右边界对齐
app:layout_constraintHorizontal_bias="0.25" 本控件在X轴1/4的地方开始
app:layout_constraintVertical_bias="0.25" 本控件在Y轴1/4的地方开始
  1. [/code]倾向(Bias)
  2. 搭配bias,能使约束偏向某一边,默认是0.5,有以下属性:
  3. [list]layout_constraintHorizontal_bias (0最左边 1最右边)layout_constraintVertical_bias (0最上边 1 最底边)
  4. [/list]加入app:layout_constraintHorizontal_bias="0.9" ,则会在水平方向上向右偏移至90%。
  5. [code]
复制代码
假如button1在button2右边,如果只有layout_marginRight,如果button1隐藏,button2会向右移动,margin parent为10dp,但是原来是110dp(假设button1宽度100dp),这时候就要设置layout_goneMarginRight,设置大小为layout_marginRight加上button1的宽度,layout_goneMarginRight在button1非gone状态时无作用。
  1. [/code]设置view的宽高比
  2. [code]
复制代码
当宽和高都为match_constraint即0dp时,约束方向为x轴时(宽为parent):
w, 1:2 高比宽; h, 2:1 宽比高
约束方向为y轴时(高为parent):
w, 1:2 宽比高; h, 2:1 高比宽
[code][/code]基线对齐,放到控件上面,然后在控件中间偏下出现一道横线,拖动与另外一个控件的这道横线平齐。点击ab可以出现这道线,×可以删除这种约束。

ConstraintLayout笔记-1.jpg
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|翁笔

© 2001-2018 Wengbi.com

返回顶部