iOS 蛋疼的布局,怒了!为啥没有 LinearLayout?

2016-03-30 23:57:19 +08:00
 colatin

作为一个 Android 开发者,有幸接触了一下 iOS 开发,对 iOS 开发者在布局方面表示深深的同情。于是做了个小控件分享一下。奉行 frame layout 和有幸在 iOS9+公司的朋友也不要躲。 链接 https://github.com/qianbin/AutoLinearLayoutView

screenshot

5602 次点击
所在节点    iDev
22 条回复
franklinyu
2016-03-31 07:52:57 +08:00
空格和 tab 混排?
ichanne
2016-03-31 08:18:27 +08:00
UIStackView 自带,谢谢
mofet
2016-03-31 08:58:34 +08:00
iOS 一般不用这种表格和比例为依据的 Layout ,屏幕 ppi 都一样,界面元素多使用固定尺寸、相对坐标。
另有 UIStackView
ichanne
2016-03-31 09:07:21 +08:00
看了下楼主的源码,写的很好,我要学习一个, AutoLayout 用得很 6
wohenyingyu01
2016-03-31 09:35:55 +08:00
uistackview +1
wohenyingyu01
2016-03-31 09:41:58 +08:00
@wohenyingyu01 看了源码,好 6 的样子,可否上 cocoapods ?
ggyb11
2016-03-31 09:44:23 +08:00
典型的 Android 思维
tigerZhang
2016-03-31 09:46:57 +08:00
nicevar
2016-03-31 09:51:16 +08:00
哈哈,不错,支持一下楼主
典型的平台迁移综合症
mornlight
2016-03-31 09:52:30 +08:00
用 Masonry 之后早已把原生的 AutoLayout 写法忘了...
superleexpert
2016-03-31 10:31:56 +08:00
stackView 还得等下过度, Masonry 目前遇到的需求都能支持。
colatin
2016-03-31 12:20:02 +08:00
@ichanne ios9+有没有?信不信比 stack view 好用?
colatin
2016-03-31 12:21:01 +08:00
@wohenyingyu01 准备上
colatin
2016-03-31 12:23:36 +08:00
这个是黑魔法。
个人认为 stackview 本身太挫,不够干净
colatin
2016-03-31 12:24:44 +08:00
@ggyb11 好的东西就得互相借鉴。 android 的 relative layout 如果能像 auto layout 那样跨层级约束就好了
colatin
2016-03-31 12:33:03 +08:00
@mofet 那苹果吃饱了撑了加了 stack view ?
mofet
2016-03-31 13:36:33 +08:00
@colatin 屌哦
Rubbly
2016-03-31 21:16:08 +08:00
说起布局 还是喜欢 xaml 的这一套
HelveticaNeue
2016-04-05 00:44:09 +08:00
@colatin 能否简单介绍一下不干净的地方?
我比较过 UIStackView 和 OAStackView 的布局速度, UIStackView 大概是 OAStackView 速度的 100 多倍,十分吓人,但是我没有研究过 UIStackView 的实现。所以能否简单说一下不干净的地方?
colatin
2016-04-05 12:54:40 +08:00
@wuyuehyang
先说一下比较挫的地方,有时候 update frame 无法 misplacement 的黄框
不干净指的是有些属性不应该由 stackview 提供,比如 distribution 属性

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

https://www.v2ex.com/t/267478

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

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

© 2021 V2EX