我已经开发了一个iOS应用程序,并在iOS6设备上进行了测试。在测试时,我意识到我的应用程序没有像预期的那样对方向变化做出响应。
以下是我的代码:
// Autorotation (iOS >= 6.0)
- (BOOL) shouldAutorotate
{
return NO;
}
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskAll;
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
return UIInterfaceOrientationMaskPortrait;
}
确切地说,我想知道iOS中的方向更改调用了哪些方法。
发布于 2012-12-12 17:33:25
你可以试试这个,它解决了你的问题。
UIInterfaceOrientation orientation = [UIApplication sharedApplication].statusBarOrientation;
有关App extension
Get device current orientation (App Extension),请参阅以下链接
发布于 2015-09-08 18:38:52
可能很愚蠢,但它是有效的(仅在ViewController中):
if (self.view.frame.size.width > self.view.frame.size.height) {
NSLog(@"Hello Landscape");
}
发布于 2012-12-12 17:59:45
按照UIDevice上的文档进行操作。
你需要打电话给
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
然后,每次更改方向时,您都会收到一个UIDeviceOrientationDidChangeNotification。
https://stackoverflow.com/questions/13836578
复制相似问题