强制 UIViewController 处于横向模式 iOS7
Posted
技术标签:
【中文标题】强制 UIViewController 处于横向模式 iOS7【英文标题】:force UIViewController to be in Landscape mode iOS7 【发布时间】:2014-02-06 22:53:46 【问题描述】:我已经实现了正确的功能,但它们没有被触发?我在 *** 上尝试了几种解决方案,但没有一个有效。我已经尝试将视图添加到 UINavigationController,也不起作用。
FakeIDDetailViewController.h:
@interface FakeIDDetailViewController : UIViewController
@end
FakeIDDetailViewController.m:
@interface FakeIDDetailViewController ()
-(BOOL)shouldAutorotate
return NO;
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
return (UIInterfaceOrientationMaskLandscapeLeft);
-(NSUInteger)supportedInterfaceOrientations
return UIInterfaceOrientationMaskLandscapeLeft;
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
return UIInterfaceOrientationLandscapeLeft;
- (NSUInteger) application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
return UIInterfaceOrientationLandscapeLeft;
【问题讨论】:
您尝试过哪些 SO 解决方案?正如你所说,有几个......我不想一一列举。 可能重复:***.com/questions/19095161/force-landscape-ios-7 In iOS6, trouble forcing ViewController to certain interfaceOrientation when pushed on stack的可能重复 试试这个:***.com/questions/22491786/… @Jim Clermonts 如果其中一个有帮助,您应该接受答案 【参考方案1】:如果您将视图控制器推送到导航控制器中的其他视图控制器堆栈,则仅需要横向将无法正常工作。您应该以模态方式显示横向约束视图控制器。
在此处查看我的答案以获取示例项目: https://***.com/a/16022631/983912
【讨论】:
【参考方案2】:对于导航控制器界面,框架不支持强制定向。在这里查看我的答案:https://***.com/a/15301322/341994
有关解决方法(不是很好),请在此处查看我的答案:https://***.com/a/16379515/341994
但是,对于呈现的视图控制器来说,强制方向可以正常工作。
【讨论】:
以上是关于强制 UIViewController 处于横向模式 iOS7的主要内容,如果未能解决你的问题,请参考以下文章
即使 iPad 处于纵向模式,如何强制 iPad 上的电视处于横向模式