OGeek|极客世界-中国程序员成长平台

标题: iphone - 强制横向 iOS 6 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 10:37
标题: iphone - 强制横向 iOS 6

我希望我的应用中的一个 View 具有横向方向。我已经设法让 View 在手动旋转时保持在横向,但是如果设备已经是纵向的,则无论其支持的方向如何(使用 supportedInterfaceOrientations 方法设置),它都会保持纵向。有没有办法让 View 自动旋转?我试过了:

[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];

但这不起作用。

任何建议将不胜感激!



Best Answer-推荐答案


做到这一点的一种方法是重写 preferredInterfaceOrientationForPresentation 但为了调用它,必须呈现(如在模态中)而不是如前所述推送here :

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
    NSLog(@" preferred called");
    return UIInterfaceOrientationPortrait;
}

为了在 UINavigationController 中展示您的 viewController,请使用:

UINavigationController *presentedNavController = [[UINavigationController alloc] initWithRootViewController:protraitViewController];

[self presentViewController:presentedNavController animated:YES completion:nil];

要使 UINavigationController 尊重您当前 viewController 的方向偏好,请使用这个简单的 category而不是子类化。

另外,这个 part阅读 Apple 的文档有助于更好地理解 iOS 方向处理。

关于iphone - 强制横向 iOS 6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16132965/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4