热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

constraintlayout嵌套_使用ConstraintLayout优化布局该怎么做?

ConstraintLayout(约束布局)是AndroidStudio推荐的布局方式,能够实现灵活的布局,减少控件之间的嵌套,从而优化界

ConstraintLayout(约束布局)是 Android Studio 推荐的布局方式,能够实现灵活的布局,减少控件之间的嵌套,从而优化界面的渲染性能。

官方文档:

以前我们用 LinearLayout、RelativeLayout 等实现的布局,现在用 ConstraintLayout 都可以实现,而且布局更轻巧,更扁平。

举个例子,要实现下面的布局,一个图标和一段文字两者居中对齐,而且文本长度不固定,考虑一下需要怎么做?

以前,我们可能会采用下面这种方式实现,通过嵌套一层 LinearLayout 来包裹要居中的元素,最后实现的效果没有任何问题,但不是最优的方案。

有了 ConstraintLayout 后,一切变得那么简单。不再需要嵌套一层,直接给元素添加约束就可以,二者通过 packed 合为一体,布局更加扁平。

这是 ConstraintLayout 的 ChainStype 属性,LinearLayout 的 layout-weight 属性也包含在其中,还可以指定左右边距的比例,实在是太灵活、太强大了。

除此之外,还有 GuideLine,Barrier,Group,PlaceHolder 等用法,支持相对定位、角度定位、比例尺寸约束等特性,有了 ConstraintLayout 还要啥自行车。

另外,从 Android Studio 的 Layout Editor 界面中可以看出,官方已经不推荐使用 Legacy 里的控件,包括 ListView、GridView、RelativeLayout 等。Layouts 里的 ConstraintLayout、LinearLayout 和 FrameLayout 可以实现绝大多数的布局,列表使用 RecyclerView 就够了。在控件选择上,没有最好的,只有最合适的。

自己是从事了七年开发的Android工程师,不少人私下问我,2019年Android进阶该怎么学,方法有没有?

没错,年初我花了一个多月的时间整理出来的学习资料,希望能帮助那些想进阶提升Android开发,却又不知道怎么进阶学习的朋友。【包括高级UI、性能优化、架构师课程、NDK、Kotlin、混合式开发(ReactNative+Weex)、Flutter等架构技术资料】,希望能帮助到您面试前的复习且找到一个好的工作,也节省大家在网上搜索资料的时间来学习。

喜欢我的文章可以关注我的【个人主页】获取免费资料,后续我将继续分享更多Android技术干货,感谢支持!



推荐阅读
author-avatar
手机用户2502858701
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有