有谁可以解释这两种方法之间的差异? The docs for UIViewController明确声明viewWillTransitionToSize应该用于管理轮换,但是点击UIContentContainer page, willTransitionToTraitCollection 方法会让人感到困惑。
我认为我理解大小类更改(特征集合更改)和大小更改之间的概念差异,但我不确定在哪种情况下实现哪种方法。来自UIKit向导的澄清会很有帮助!
答案 0 :(得分:17)
每当您想要对用户旋转设备做出回应时,您应该使用viewWillTransitionToSize
,如果您这样做,您确定您的操作已执行,因为每次您的应用都会调用此操作; s窗口改变大小。
如果您只想在特征集合更改时执行操作,例如,如果您为collectionViewLayout
大小类设置了某个Compact
,而为Regular
设置了另一个willTransitionToTraitCollection
你使用traitCollection
。
如果特征集合发生变化,那么大小也会发生变化。但它并没有相反的方式。纵向iPad和风景iPad具有相同的特征,但尺寸不同。在混合中添加多任务处理,您可以使用各种尺寸来映射到两个{{1}}尺寸类别。