阻止 UIView 旋转到横向 [英] Stop UIView from roating into landscape

查看:37
本文介绍了阻止 UIView 旋转到横向的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在导航控制器中有一个 UIView,我试图阻止这个视图进入横向,但是我尝试使用的方法从不触发......代码低于任何帮助将不胜感激..

I have a UIView thats inside a navigation controller, I am trying to prevent this view from going into Landscape however the method I am trying to use never fires.. code is below any help would be greatly appreciated..

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    if(interfaceOrientation == UIInterfaceOrientationLandscapeRight)
    {
        return NO;
    }
    else if(interfaceOrientation == UIInterfaceOrientationLandscapeLeft)
    {
        return NO;
    }
    return NO;
}

推荐答案

您应该为父导航控制器或在 UIViewController 上设置 return NO;,而不是 <代码>UIView.

You should set return NO; for the parent navigation controller or on a UIViewController, not a UIView.

此外,这与更少的代码一样有效:

Also, this works just the same with less code:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

iOS 6

从 iOS 6 开始,shouldAutorotateToInterfaceOrientation: 已被弃用.如果视图控制器没有覆盖 supportedInterfaceOrientations 方法,UIKit 从应用程序委托或应用程序的 Info.plist 文件中获取默认旋转.

iOS 6

As of iOS 6, shouldAutorotateToInterfaceOrientation: is deprecated. If the view controller does not override the supportedInterfaceOrientations method, UIKit obtains the default rotations from the app delegate or the app’s Info.plist file.

您将需要使用:

- (NSUInteger)supportedInterfaceOrientations NS_AVAILABLE_IOS(6_0);

这篇关于阻止 UIView 旋转到横向的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆