方向更改时更改视图大小

时间:2010-03-17 00:35:14

标签: iphone uikit uiview ipad orientation

我希望我的UIView子类能够表现为当它以纵向方式拟合时,在横向模式下安装时具有一定的大小和另一个大小。

当方向改变它具有“理想大小”时,是否可以让视图向视图控制器指示正在调整大小?

为了澄清,我确信这不是可以通过自动调整掩码完成的事情。我还认为sizeThatFits:就是我需要的东西但是当方向改变时我没有看到它被调用。

我也知道我可以通过覆盖superview的layoutSubviews(或者可能是视图控制器的其他方法)来完成这项工作,但我希望在视图中嵌入此行为以便于重用。

1 个答案:

答案 0 :(得分:2)

设备旋转时会收到多条消息:

- shouldAutorotateToInterfaceOrientation:;
- willRotateToInterfaceOrientation:duration:;
- didRotateFromInterfaceOrientation:

您可以使用它们在用户旋转时重新布局视图。

如果您不想使用视图控制器,可以注册UIDeviceOrientationDidChangeNotification通知。