ios - iphone 中的锁定方向问题

标签 ios objective-c iphone ipad uiinterfaceorientation

我有这样的结构

LoginViewController-->Root

LoginViewController-->UINav---->HomeViewController

现在我必须将此方向锁定为仅适用于 iPhone 的纵向并且必须为 iPad 提供两种方向

对于登录 Controller ,我这样写

-(BOOL)shouldAutorotate{

    if(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad)
    {
        return YES;
    }
    else
    {
    return NO;
    }
}

这工作正常。我在 iPhone 上只有纵向,在 iPad 上有纵向和横向

但是同样的一段代码写在HomeViewController中是行不通的。 是不是内嵌了HomeViewConroller的Navigation Controller的缘故。

最佳答案

嗯。我自己解决了这个问题。发布关于该怎么做的解决方案,因为它也可能对其他人有所帮助。 只需取消选中Target->General

中的设备方向检查(LandscapeLeftLandscapeRight)

enter image description here

并在每个 Controller 中编写相同的代码

-(BOOL)shouldAutorotate{

    if(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad)
    {
        return YES;
    }
    else
    {
        return NO;
    }
}

这对我有用。现在我在 iPhone 上只有一个肖像模式,在 iPad 上只有一个风景模式和一个肖像模式。

关于ios - iphone 中的锁定方向问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30830204/

相关文章:

ios - NSMutableAttributedString:如何在 iOS 上以编程方式删除最后一个字符?

iphone - 如果键以 @ 符号开头,则在 NSDictionary 上使用 valueForKeyPath?

iOS Swift 如何访问在完成处理程序闭包中创建的数据——在闭包之外

ios - 使用 ApI 在 ios 中阻止用户 in instagram

ios - 是否可以从 UIImagePickerController 拍摄多张照片?

iphone - 如何在 iOS 上调用 Rootviewcontroller

ios - ECSlidingViewController 在关闭 UIViewController 时导致错误

iphone - 使用 FBConnect iphone 登录 Facebook 后出现白屏

iphone - 使用 ARC 的优点和缺点是什么?

php - 适用于 iOS 的 Objective C ... 是适合 php 程序员的好资源吗?