【问题标题】:Iphone Orientation IssuesIphone 方向问题
【发布时间】:2010-07-15 08:18:18
【问题描述】:

我有一个结构如下的应用程序

  • UITabBarController(3 个选项卡)
    • UINavigationController(在每个选项卡中)
      • UIViewController(在每个导航控制器中)

在其中我希望一些 UIviewControllers 能够切换到横向和纵向模式

例如,在选项卡 2 中,我有一个图片库部分(视图 1) 在其中我有 9 个按钮,用于 9 个图片库 当触摸按钮 1 时,导航控制器导航到视图 2,用户可以在其中浏览不同的照片。当用户触摸照片时,导航控制器会导航到视图 3 以实现全屏模式。

现在我希望 View 3 可以同时适应横向和纵向模式。其中所有以前的视图只能以纵向模式查看。我该怎么做呢?

我已经摆弄了

(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

所有视图中的方法,但我似乎无法正确。

【问题讨论】:

    标签: iphone objective-c cocoa-touch


    【解决方案1】:

    这种情况我很难受。

    解决这个问题的两种方法:

    第一
    使用[[UIDevice currentDevice] setOrientation:whatever];会触发警告。

    第二
    使用 presentModalViewController:animated: 并在此 Modal View Controller 中实现 shouldAutorotateToInterfaceOrientation:。如果你想保留原始的过渡动画,你将不得不编写一些代码。

    【讨论】:

    • 你能详细说明一下吗?
    【解决方案2】:

    在这种情况下,根视图控制器(UITabBarController)必须实现shouldAutorotateToOrientation:,然后每个子控制器也必须实现。所以将标签栏控制器的方法设置为 YES,然后对于那些除了肖像之外什么都不想要的方法,只需将其设置为仅针对该视图返回 yes 等等。

    【讨论】:

    • 这似乎无法正常工作。方向发生在所有视图中
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-27
    • 2011-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多