代码之家  ›  专栏  ›  技术社区  ›  Alpinista

外部监视器上的ViewController方向

  •  0
  • Alpinista  · 技术社区  · 9 年前

    我有一个iPad kiosk应用程序,可以在通过HDMI电缆连接的外部显示器上显示视频。在应用程序常规设置中,设备方向设置为横向左侧或横向右侧。我希望该应用程序在iPad和外部显示器上以横向显示。当我在iOS7中运行应用程序时,外部监视器的视图控制器以横向方向正确显示,但当在iOS8下运行时,外部显示器的视图控制器逆时针旋转90度,以纵向方向显示。

    如何将外部显示器强制设置为正确的横向方向?iOS 7和8之间发生了什么变化导致了这种行为?

    1 回复  |  直到 9 年前
        1
  •  0
  •   Rony Rozen    9 年前

    我也遇到过类似的问题,一款支持airplay的仅限风景的iPad应用程序。在iPad屏幕上,一切都正常,但在外部显示器上,从@iOS 8.0开始,开始出现方向问题。我尝试了很多方法,最终有助于以下两种修复:

    shouldAutorotate 方法,返回 NO .

    实施 application:supportedInterfaceOrientationsForWindow: 方法:

        - (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)_window
        {
            if ([UIScreen mainScreen] == _window.screen || !_window)
            {
                return UIInterfaceOrientationMaskAll;
            }
            else
            {
                return UIInterfaceOrientationMaskPortrait;
            }
        }
    

    修复的第二部分可能需要您进行一些更改,因为您没有使用AirPlay,但我希望它可以帮助您找到正确的解决方案。祝你好运