ConstraintLayout其实很简单

来源:互联网 发布:ios系统解压缩软件 编辑:程序博客网 时间:2024/05/24 03:12

我用的是as2.3.3,这个版本已经自动引用的依赖,将constraintLayout作为主页面的根布局,这已经说明了constrainLayout的重要性。刚开始觉得这个布局有什么好啊,谷歌竟然将他变成根布局,于是自己在网上看了很多前辈的博客,这里也记录一下自己怎么快速入门的和自己踩过的那些坑。个人觉得开始不要使用design界面拖拽,先用text的代码敲敲比较好,好了先讲主要的命令
其实他主要有这几个属性就可以确定一个控件的位置:

  • layout_constraint[本源位置]_[目标位置]=”[目标ID]”
    例如
    1、app:layout_constraintBottom_toBottomOf=”@+id/button1”
    2、app:layout_constraintLeft_toRightOf=”@+id/button1”
    还有很多等等,
    我说说这些命令的意思吧,第一个表示我这个控件的底部跟button1的底部相平,这也表示控件下面的约束,第二个表示这个控件的左边放在button1的右边,这也表示控件下面的约束,当然也可以写成为parent,这个的意思就是相对于父布局
    就单单这个命令使用两次就可以确定这个控件的位置,可以是左和上,左和下,右和上,右和下,只要确定了其中的一组就可以确定自身的位置了。可以看看上面的那两行代码,左下约束于button1,表示他在button1的右边并且底部跟这个button持平。大家可以改成parent试试,效果很明显。

    这里写图片描述

  • 位置确定了,再来看看一个比较常用的,居中属性

  <com.xx.hello.hellondk.sql_dome.LoadingView        android:layout_width="70dp"        android:background="@drawable/loading_bg"        app:layout_constraintLeft_toLeftOf="parent"        app:layout_constraintTop_toTopOf="parent"        app:layout_constraintRight_toRightOf="parent"        android:layout_height="70dp"/>

这是我自定义的一个控件,大家别介意,首先我们可以看到app:layout_constraintLeft_toLeftOf=”parent”
app:layout_constraintTop_toTopOf=”parent”这两个属性就可以把控件定位到左上方,而后面又加上约束右边的代码,是的,只要加上相反方向的属性就可以居中了,现在他的位置是这样的。
现在他的位置是这样的

  • 下一步将自定义控件铺满屏幕

也许你会说这不是很简单吗?只要设置控件的宽度为match_parent,但是事实不是这样的。
首先把宽度设为match_parent或者是0dp,然后加上左和右的约束,就可以填充屏幕了。

  <Button        android:layout_width="match_parent"        app:layout_constraintLeft_toLeftOf="parent"        app:layout_constraintTop_toTopOf="parent"        app:layout_constraintRight_toRightOf="parent"        android:layout_height="70dp"/>

明白了上面的这些属性之后,我们可以到可视窗口来玩玩了,这里还有很多属性大家可以点击玩玩
先选中然后右键

首先理解了他的属性,然后到可视那边就很好弄了

原创粉丝点击