旋转后UIView的位置

时间:2011-06-25 15:58:24

标签: iphone objective-c uiview

我有一个没有相应UIViewController的自定义UIView子类。我在我的应用程序中的各个地方使用此类。当我旋转设备时,我需要重新定位视图。我理解这通常是使用willAnimateRotationToInterfaceOrientation:duration:方法完成的,但这是UIViewController类的一部分,而不是UIView。我的问题是,有没有办法让我的UIView重新定位自己而不必实现相应的UIViewController?

1 个答案:

答案 0 :(得分:1)

应用程序在旋转时会从设备接收通知。您可以告诉设备使用

开始为您生成这些通知

[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];

然后您可以使用

注册通知

[NSNotificationCenter default] addObserver:self selector:@selector(doThisWhenRotates :) name:addObserver:selector:name:object:object:nil];

但是,我不建议这样做。如果你真的想要关注MVC,你应该有一个控制器来处理这种类型的东西。

但是如果你需要,你可以按照上面列出的方式进行。