Android 喜迎 Constraint Layout

2016-05-20 10:56:43 +08:00
 Majirefy

在最新的 Android Studio 2.2 Preview 1 中, Google 在 UI 布局上提供了一个新的默认布局方式: Constraint Layout 。

具体介绍: http://tools.android.com/tech-docs/layout-editor

当然现在还有很多问题,譬如打开预览就会报错之类的…… Google 也承诺会“ rapidly ”更新这个 API 。

然而有一点没有明白……既然有了 Relative Layout ,为什么还要学习 iOS 弄一个这个出来呢?官方给的解释并不太具有说服力,至少用 Relative Layout 也都能做到……

于是乎,请教一下~

12795 次点击
所在节点    Android
35 条回复
Majirefy
2016-05-20 14:52:15 +08:00
@monsoon 嗯嗯,之前去你给的那个网址看过。的确能解决不少问题~~

这个较比 FlexBox Layout ,怎么样呢?
learnshare
2016-05-20 14:59:33 +08:00
我只想到了 Qt Designer 的布局编辑器有类似的特性
audi
2016-05-20 15:05:09 +08:00
Android Studio 相比 xCode 还有很大的差距
sdqhzhm
2016-05-20 15:08:48 +08:00
@Majirefy 概念不同吧, Constraint Layout 里面分组,相对,横竖屏响应的概念更接近 Android 原有 Layout 的思路。 Flexbox 应付的场景和思路和 Constraint 还是不一样的。
monsoon
2016-05-20 15:09:54 +08:00
@Majirefy
两个布局之间解决的问题或者侧重点不一样。
新布局可能要解决一些布局过深、控件之间的关系、不同屏幕下布局的改变之类的问题。
FlexBox 我也了解不多,不过这个可能是 Google 什么组里某几个人写的吧,感觉和 Android Framework 和 Support 那几个组可能没什么联系。

现在关于新的布局的信息还不多,官方也还没说新的布局的性能之类的相关的信息。可能等明天这个布局的 event 解说后就会有什么新情报吧。
Majirefy
2016-05-20 15:17:27 +08:00
@monsoon 谢谢回答!

嗯嗯,有什么新内容,也欢迎在这儿更新~~~
ldehai
2016-05-20 15:25:40 +08:00
我是用完 Xcode 再去用 Android Studio ,发现这个布局方式跟 Xcode 完全不一样。
适应之后发现比 Xcode 的约束用起来方便。 Xcode 里面的 Stack View 跟 AS 里面的 LinearLayout 有异曲同工之处。
现在 AS 又向 Xcode 学习用约束了。相互取经也挺好的。用自己喜欢的就好了。
allan1st
2016-05-20 16:18:09 +08:00
@EchoWhale 想太多了。昨天 IO 上官方明确说了不会支持 swift 。另一个 jvm 语言貌似是可能的,但应该也不是近期。
plqws
2016-05-20 22:11:20 +08:00
@allan1st 上另一个 jvm 语言……是 kotlin 吗
yeelone
2016-05-20 22:54:13 +08:00
期待 kotlin
Makoshan
2016-05-21 10:17:36 +08:00
太多 Android 新手只会用 LinearLayout 布局,导致 App 的层级太多,常有人吐槽 Android App 卡的一个原因。 RelativeLayout 布局花的的时间太多,如果有一个更好的布局系统,至少代替 LinearLayout 没什么不好的, Constraint Layout  应该抄的 StoryBoard 那一套。反正我做 iOS 开发的时候都是直接拖的控件, Android Studio 拖控件做的不如人意,经常是手写 xml ,现在有一个更好用的拖布局的工具,而且生成的是相对布局,简单的页面还是可以考虑用的。
dphdjy
2016-05-21 12:52:20 +08:00
Constraint Layout 类似于 Relative Layout 的升级,因为现在很多应用界面层级太多,过度重绘,然后卡成狗,所以出了这个更加扁平的布局,相对于 Relative Layout 支持了更多的控件间的相对关系

还有更佳友好的拖动,感觉没什么用~直接写比较快~
https://mobile.twitter.com/i/status/733697675149910016/photo/1

https://mobile.twitter.com/i/status/733767632751562753/photo/1

http://wehuibao.com/docq/526735
ayaseangle
2016-05-21 16:42:31 +08:00
不就是 autolayout 嘛。。。
Ervin
2016-05-23 23:50:08 +08:00
这种模式适合简单布局,如果要滑动就跪了。而且个人感觉拖控件去布局太 low 了,跟微软那一套一样。不建议使用,还是手写 XML 比较舒服。
fan123199
2017-05-31 11:02:27 +08:00
RelativeLayout 相当的难用。ConstraintLayout,既可以拖动,也可以手写,大大提升效率。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.fyfyfm.apispeedy.workers.dev/t/279972

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX