我正在尝试UIViewController
通过设备方向通知我重新应用布局。为此,我将发布UIDeviceOrientationDidChangeNotification
到默认中心。它有效,但没有旋转动画。我想我错过了一些东西。我怎样才能UIDeviceOrientationDidChangeNotification
正确发布?
问问题
1275 次
3 回答
1
它将为您发布事件:
- (void)updateOrientation
{
[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications];
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
}
但是,当然,您应该更加整洁,[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications]
在需要停止旋转时调用,然后[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
在您准备好再次处理它时调用:它将为您的视图控制器调用所有必要的回调。
于 2014-03-06T04:32:58.583 回答
1
利用:
[[UIApplication sharedApplication] setStatusBarOrientation: UIInterfaceOrientationLandscapeRight animated:YES];
相反(根据需要替换 LandscapeRight),因为您不应该发布系统通知。
于 2011-07-13T22:17:58.797 回答
0
当您尝试发布该内容时,我认为不应该有任何内容。相反,它会在方向发生变化时自动发布。如果你想使用它,你应该为帽子通知添加一个观察者。
于 2011-03-21T00:14:28.423 回答