【发布时间】:2015-09-24 08:12:40
【问题描述】:
我没有使用自动布局,但是我希望能够使我的(非常复杂的)应用程序适应 iPad 上的拆分视图多任务处理。为此,理想情况下,我想在不走自动布局路线的情况下支持尺寸类。观看 WWDC 406 会议似乎可以通过编程方式执行此操作,但我不确定,因为他们在每个示例中都使用了 Autolayout,甚至 Interface builder 也不支持它。
如果我要收听有关 trait 更改的通知并以编程方式或使用 pin 和 struts 进行所有操作,我会遇到任何问题吗?我在 Storyboards 中定义了所有内容,但是当 iPad 在 iOS 9 中并排显示两个应用程序时,我希望能够支持不同大小的视图控制器。请告知。
【问题讨论】:
-
是的,您可以使用没有自动布局的尺寸类。您可以通过从
Master-Detail Application模板创建应用并禁用故事板的 autolyaout 来轻松测试它。 -
对不起,这是错误的!您在发表评论之前自己尝试过吗?关闭自动布局的那一刻,它也会禁用和关闭大小类。如果没有 AutoLayout,尺寸类本身就没有意义,因为该技术依赖于自动布局来完成它的工作。
-
是的,我试过了,他们仍然为我工作。我看到来自 Xcode 的警报和
Size Classes复选框未选中。但拆分视图控制器的行为没有改变,traitCollectionDidChange在旋转后被调用 -
那并不意味着它正在使用尺寸等级。当您使用字大小类时,您实际上指的是 Interface Builder 可视化设计不同类的能力。 'traitCollectionDidChange' 会以任何一种方式工作,因为如果你自己以编程方式进行 - 这就是我最初的问题:)
-
哦,您的意思是在禁用自动输出的情况下更改 IB 中的大小类...在这种情况下,是的,您不能这样做。但似乎他们仍在工作
标签: ios xcode6 autolayout size-classes