Android ConstraintLayout 个人使用感受

来源:互联网 发布:在线办公软件qq 编辑:程序博客网 时间:2024/06/06 00:22

ConstraintLayout 即约束布局,是谷歌最近推出的一种新布局,关于他的基本用法,网上也有不少的教程了。可以参照:

Android ConstraintLayout详解

使用ConstraintLayout构建一个灵活的布局


个人使用感觉:

其实一开始用的时候,很不习惯这个布局,activity新建后直接就是一个全局的android.support.constraint.ConstraintLayout布局。

而把各种空间拖进去的时候,会经常自动变化。。。用起来怪怪的。。

后来我把最外层的布局又改为了常用的LinearLayout等,在内部嵌套使用ConstraintLayout,感觉就好了很多,布局也的确相对简洁了。

建议不要所有布局都用ConstraintLayout,还是哪种方便优先使用哪种

比如下图: 最外层使用LinearLayout,然后一些纯粹自上而下的布局写在上面,然后下面复杂的使用ConstraintLayout。



关于更新:

目前这个控件更新十分频繁,可以通过Tools - Android - SDK Tools - 右下角Show Package Details - 在Support Reposiory里 - ConstraintLayout For Android和Solver for ConstraintLayout ,可以看到最新版本的,更新即可。


关于这个布局最常用的几个属性:

也就是app:layout_constraintLeft_toLeftOf和其他跟这个类似的app:layout_constraintXXXX_toYYYOf ,表示该控件的上下左右,对齐某控件的某个方向

一般都会有至少一个控件对齐parent,然后其他控件都想对它来改变位置。

然后就是拖拖拖了,很方便。但是复用的不能像老控件那样类似空间直接复制粘贴,关联得一个个改,这个有点麻烦。。。所以个人还是建议还是要各种布局按需使用。


layout_marginLeft和layout_marginRight不起作用:

当一个控件左右都约束了parent,可能会遇到左右间隔不起作用的情况,原因是android:layout_width设置了match_parent或者wrap_content,需要改为0dp变成Match Constraint才会起作用。


可以看到就算设置了margin50dp都不起作用.


变成这种模式后就可以了。



待编辑。。。


2 0
原创粉丝点击