在横向模式下制作 iOS 应用

Posted

技术标签:

【中文标题】在横向模式下制作 iOS 应用【英文标题】:Making an iOS app in landscape mode 【发布时间】:2012-12-23 22:18:21 【问题描述】:

我有一个针对 ios 5.1 的完全空的单视图应用程序,我试图让该应用程序仅在横向模式下工作。

在项目摘要屏幕中,我选择了横向选项和取消选择纵向选项。

我在 info.plist 中验证了仅显示横向。

在情节提要中,我选择了视图控制器进入模拟指标并选择横向作为方向。

当应用程序最初打开时,会以横向模式显示黑屏。当显示纯白色视图时,它处于纵向模式。我已经阅读了许多帖子,但无法找到解决此问题的方法。

我觉得我忽略了一些简单的事情,但在过去,当我想在横向模式下制作应用程序时,我只是在摘要中选择了横向并且它起作用了。

任何建议将不胜感激。

@interface ViewController ()

@end

@implementation ViewController



- (void)viewDidLoad

    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.


- (void)didReceiveMemoryWarning

    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.


@end

【问题讨论】:

我们可以看看你的视图控制器的代码吗? 您使用的是什么版本的 xcode?我知道您可以编写代码,但如果您使用 4.5,那么 AutoLayout 将为您处理。 Xcode 版本 4.5.2 在我以前的所有项目中,Xcode 都为我处理好了 【参考方案1】:

您的根视图控制器中是否实现了以下功能?

    - (NSUInteger)supportedInterfaceOrientations
    
        return UIInterfaceOrientationMaskLandscapeLeft;
    

http://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/RespondingtoDeviceOrientationChanges/RespondingtoDeviceOrientationChanges.html

【讨论】:

我刚刚添加了代码,没有任何改变。我也从其他帖子中添加了类似的代码,没有任何改变。 您的根视图和任何其他视图必须在方向上达成一致。听起来您的 root 设置正确,而您的白屏设置不正确。 该链接有助于我之前查看 6.0 的代码。使用该链接中的代码,我能够使其在 5.1 中运行。谢谢!!! 为什么不使用 UIInterfaceOrientationMaskLandscape 让它左右自动旋转?

以上是关于在横向模式下制作 iOS 应用的主要内容,如果未能解决你的问题,请参考以下文章

如何强制 iOS 应用以纵向模式启动

Iphone 应用程序在横向和纵向模式下都可以正常工作,但在 ipad 中它只能在一种模式下工作?

我的应用内容在横向模式下被截断

iOS中的屏幕旋转

当设备倾斜到横向时,iOS应用程序崩溃

在横向模式下锁定 Ipad 应用程序