目录

ConstraintLayout

Barrier

Group

Guideline

Placeholder


ConstraintLayout

1.父布局约束<子控件位于布局中的什么位置默认绘制在左上角>

layout_constraintLeft_toLeftOf约束子View左对齐

layout_constraintRight_toRightOf约束子View右对齐

 

2.子View相对约束<控件相对于其他控件的位置 >

layout_constraintLeft_toRightOf(其他位置类似)相对于其他子View的位置

 

3.圆形约束<使用圆的方式设置边上的控件相对于圆心控件的位置>

layout_constraintCircle圆心子View

layout_constraintCircleRadius圆形半径

layout_constraintAngle定位角度

 

4.百分比约束<通过百分比的方式约束子控件的长宽>

控件宽高设置为0dp

设置控件的父布局约束

设置默认宽高为为父布局的宽高(layout_constraintWidth_default="percent",1.1-beta1和1.1-beta2中是必需的)

设置宽高所占的百分比(layout_constraintWidth_percent="0.5")

注意:强制限制生成的控件大小,不遵循自适应的设置宽高可以使用layout_constrainedWidth =“true | false”

 

5.子控件的宽高比

设置宽高至少一个为0dp

layout_constraintDimensionRatio="1:1"(浮点值,比例形式为宽度:高度)

如果两个尺寸都设置为MATCH_CONSTRAINT(0dp),您也可以使用比率。在这种情况下,系统设置满足所有约束的最大大小并保持指定的宽高比。要根据另一个特定边的大小来约束特定边,可以预先设置W,“或H”来分别约束宽度或高度。

android:layout_width =“0dp”
android:layout_height =“0dp”
app:layout_constraintDimensionRatio =“H,16:9”
app:layout_constraintBottom_toBottomOf =“parent”
app:layout_constraintTop_toTopOf =“parent”/>

 

6.链约束<链在单个轴(水平或垂直)上提供类似行的行为。另一个轴可以独立约束>

链由链的第一个元素(链的“头部”)上设置的属性控制

链式:在链的第一个元素上设置属性layout_constraintHorizo​​ntal_chainStyle或layout_constraintVertical_chainStyle

CHAIN_SPREAD - 元素将展开(默认样式)

加权链 - 在CHAIN_SPREAD模式下,如果某些小部件设置为MATCH_CONSTRAINT,它们将拆分可用空间

CHAIN_SPREAD_INSIDE - 类似,但链的端点不会分散
CHAIN_PACKED - 链的元素将被打包在一起。然后,子项的水平或垂直偏差属性将影响打包元素的定位.

加权链
链的默认行为是在可用空间中平均分布元素。如果一个或多个元素使用MATCH_CONSTRAINT,则它们将使用可用的空白空间(在它们之间平均分配)。 layout_constraintHorizo​​ntal_weight和layout_constraintVertical_weight属性将控制如何使用MATCH_CONSTRAINT在元素之间分配空间。例如,在使用MATCH_CONSTRAINT的包含两个元素的链上,第一个元素使用权重2,第二个元素使用权重1,第一个元素占用的空间将是第二个元素占用的空间的两倍。

 

边距和链条(1.1)
在链中的元素上使用边距时,边距是附加的

在水平链上,如果一个元素定义了10dp的右边距而下一个元素定义了5dp的左边距,则这两个元素之间产生的边距为15dp。

在计算链用于定位项目的剩余空间时,会同时考虑项目及其边距。剩余空间不包含边距。

Barrier

限制线,多用于自适应的多个文本布局约束水平或垂直方向不能超过限制线。

constraint_referenced_ids="id1,id2"限制的控件id用逗号分隔

 

Group

统一管理隐藏和显示的控件

constraint_referenced_ids="id1,id2"需要隐藏或显示控件id用逗号分隔

updatePostConstraints()更新约束条件

 

Guideline

约束辅助线(完成复杂布局使用)

垂直辅助线或水平辅助线

orientation设置辅助线的方向

layout_constraintGuide_begin="100dp"从规定方向开始<普通布局方式>

layout_constraintGuide_end="100dp"到规定方向结束<同上>

layout_constraintGuide_percent="0.5"百分比布局

 

Placeholder

占位符提供可以定位现有对象的虚拟对象

更多相关文章

  1. android 时间滚动控件 底部弹出
  2. 【Android】常用控件及布局
  3. android实现简单左滑删除控件
  4. android上小圆点page控件
  5. Android 布局讲解
  6. Android 仿抖音上下滑动布局
  7. Android UI布局经验总结
  8. 控件:TouchProject(绘图) --- 触摸事件

随机推荐

  1. android 将时长毫秒转化为分钟和秒
  2. android binder机制之二 Service Manager
  3. [Android基础]四大组件之ContentProvider
  4. Android中onConfigurationChanged监视系
  5. Android Sqlite数据库跨版本升级 保存之
  6. Android监听系统通知
  7. Android Wi-Fi connect & auto connect流
  8. Android基础—WebView(网页视图)基本用法
  9. 关于Android使用Google Map Android API
  10. android UI小结(三)