iOS App:窗口旋转始终是Portrait而不是Landscape

时间:2013-06-26 03:04:50

标签: ios orientation

我的应用仅适用于横向。 因此,我在LandScape Home Right设置了初始方向和支持方向。

但是,初始启动方向始终变为纵向。 导航到下一页并返回后,方向是正确的。

这可能与以下类似问题In IOS 6 on iPad, initial rotation is always portrait, after that it always rotates correctly

但是那里的解决方案没有工作,因为'handleRotationFor'会发出警告:     找不到instanceMethod -handleRotationFor(返回类型默认为'id')

我该如何解决此错误?

请帮忙

4 个答案:

答案 0 :(得分:1)

在文件窗格的Xcode中,单击您的项目,然后从右侧窗格中选择目标。然后在摘要选项卡中查看支持的方向。仅选择横向右侧。你也可以实现

-(NSUInteger)supportedInterfaceOrientation {
return UIInterfaceOrientationMaskLandscapeRight;
}

在你的app delegate

答案 1 :(得分:1)

项目目标 - >单击“摘要”选项卡,然后在“支持的接口方向”

中选择方向

答案 2 :(得分:0)

在摘要选项卡下的Xcode中,确保没有按下纵向和上下颠倒。另外添加这三个功能。

// *********************
// ios6 orientation support
// *********************
- (BOOL)shouldAutorotate
{

    UIInterfaceOrientation interfaceOrientation = [[UIDevice currentDevice] orientation];


    if (interfaceOrientation == UIInterfaceOrientationPortrait)
    {
        return NO;
    }
    else if (interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown)
    {
        return NO;

    }
    else
    {
        return YES;
    }

}

-(NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskLandscape;
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{

    if (interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown)
    {
        return NO;
    }
    else
    {
        return YES;
    }



}

答案 3 :(得分:0)

检查应用的info.plist中支持的方向。检查并设置nib文件中的方向。

您可以使用[[UIDevice currentDevice] orientation]

检查方向