【发布时间】:2014-02-25 16:52:09
【问题描述】:
我正在创建一个具有非平凡旋转行为的视图控制器。我找不到一种方法来仅通过 UIViewAutoresizing 进行所有转换(我正在做一些事情,例如在旋转按钮时将底部栏保持在屏幕上相同的“绝对值”)。处理的正确方法是什么这些类型的旋转行为?有没有办法禁用特定视图的自动调整大小并自己处理旋转?
【问题讨论】:
标签: ios objective-c rotation autoresize
我正在创建一个具有非平凡旋转行为的视图控制器。我找不到一种方法来仅通过 UIViewAutoresizing 进行所有转换(我正在做一些事情,例如在旋转按钮时将底部栏保持在屏幕上相同的“绝对值”)。处理的正确方法是什么这些类型的旋转行为?有没有办法禁用特定视图的自动调整大小并自己处理旋转?
【问题讨论】:
标签: ios objective-c rotation autoresize
如果您将视图的autoresizesSubviews 属性设置为NO,该视图将不会对其子视图应用自动调整大小。您可以在 xib 或情节提要中通过取消选中属性检查器中的“Autoresizes Subviews”复选框来执行此操作。
以编程方式布置子视图的正确位置是自定义UIView 子类的layoutSubviews 方法。每当它的大小发生变化或 subviews 数组发生变化时,您的视图都会收到 layoutSubviews 方法。当视图第一次被放置在屏幕上时,您将收到它,并且在自动旋转动画块内。
【讨论】: