【发布时间】:2014-11-14 16:06:32
【问题描述】:
我对 iOS 开发有一种感觉,希望得到反馈。
Storyboard / Interface Builder 乍一看是很棒的工具。事实是,除了快速的原型和非常简单的用户界面之外,我总是觉得使用它们很受阻。这个问题可能提供了一个很好的例子:how can I use one storyboard for 4" and 3.5" iphone screens with autolayout (ios6 + ios7)?
我正在考虑对我的所有观点进行编码。主要是因为它可以让我实现一些逻辑,比如元素的等间距。 AFAIK 不可能通过 GUI 工具以跨设备方式完成。
我的问题是:Storyboard / IB 是否支持高级视图布局?如果这样做,您通常如何编写视图代码:扩展 UIView / 调整控制器?
编辑:接受的答案链接很好。有兴趣的读者也可以看看 Apple 的 Auto Layout Guide 相关例子:https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/AutolayoutPG/AutoLayoutbyExample/AutoLayoutbyExample.html#//apple_ref/doc/uid/TP40010853-CH5-SW7
【问题讨论】:
-
这个问题实在是太宽泛了,无法单独回答。是否有您希望支持但您无法弄清楚如何在 IB 中创建的特定高级视图布局?请注意,Xcode 6 为故事板带来了该问题未解决的新功能。
-
您可以在情节提要中设置等间距,但您需要在视图之间添加间隔视图来完成此操作(如果您支持多个,我认为这也是在代码中执行此操作的最佳方式屏幕尺寸)。至于您之前的问题,最简单的方法是为顶部约束和高度约束制作 IBOutlets,并在代码中更改它们的常量值(因此是故事板和代码的混合方法)。故事板可以支持相当高级的布局,但每种情况都不同,您必须决定哪种最适合您。
标签: ios interface-builder uistoryboard