【问题标题】:Rotate only one view controller in a tabbed application在选项卡式应用程序中仅旋转一个视图控制器
【发布时间】:2012-11-20 14:54:23
【问题描述】:

我已经阅读了很多帖子,但我找不到解决方案。

我有一个使用情节提要的选项卡式应用程序。该选项卡式应用程序的所有视图控制器都必须以纵向显示内容,但只有一个视图控制器(显示视频)我希望处于横向模式。

故事板说明:TabBarController -> 4x 导航控制器 -> 每个导航控制器指向他的 ViewController -> 其中一个视图控制器有一个图像,当我按下该图像时,我已经推送到另一个视图,我希望在横向模式下拥有的视图,因为我有一个 UIWebView 来显示视频。

我无法让所有应用程序都处于纵向,并且提到的视图控制器能够在横向模式下旋转。

我的应用也支持 iOS 5,所以我知道有些方法已被弃用,我快疯了。

我相信在 Summary > iPhone / iPod Deployment info > Supported Interface Orientations > 那里我必须检查纵向、左右横向,然后通过方法启用或禁用旋转。我迷路了。

你能帮帮我吗?

【问题讨论】:

    标签: iphone ios uiviewcontroller rotation uitabbarcontroller


    【解决方案1】:

    如果您将视图作为模态推送,我认为您应该能够做到这一点。确保您的应用程序的 PList 文件(在 Supporting Files 文件夹下)设置为支持所有方向,然后只需将代码添加到模态视图控制器即可显示类似这样的横向。

    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOr‌​ientation 
    { 
        return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft); 
    }
    

    如果你有任何运气,请告诉我。

    【讨论】:

    • 它适用于 iOS 5。我还添加了一个带有后退按钮的工具栏来弹出模态 segue 的视图。要弹出的代码:[self dismissViewControllerAnimated:YES completion:nil];现在我要实现 iOS 6 的代码,因为在 iOS 6 上不推荐使用 shouldAutorotateToInterfaceOrientation 方法。
    【解决方案2】:

    当我为我的应用程序设计时,我建议您使用此解决方案。通过在 shouldAutorotateToInterfaceOrientation 方法方向类型中使用一些条件,我们可以解决此问题。尝试使用此链接将对您有所帮助。

    https://stackoverflow.com/questions/12021185/ios-rotate-view-only-one-view-controllers-view/15403129#1540312

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多