airplay镜像与不镜像之间的区别

时间:2014-01-14 07:48:46

标签: ios ipad airplay apple-tv

我正在尝试用Apple TV播放。我发现当我只是在没有镜像的情况下使用avplayer播放视频时,我仍然可以全屏播放。但是,屏幕数量仅为1(适用于iPad) 如果我进行镜像,屏幕数为2(一个是iPad,一个是外部显示器)。我认为没有镜像,屏幕数也应该是两个。我很困惑。我想更多地了解airplay镜像与不镜像之间的区别

screens = [UIScreen screens]; //to count screen

enter image description here

2 个答案:

答案 0 :(得分:2)

区别很简单。

镜像将复制屏幕上的所有内容并将其显示在另一个屏幕上。这用于向一群人或类似的东西展示照片库。

如果关闭镜像,则此操作将用作外部显示器。这用于像Real Racing 3这样的游戏,您可以在电视或其他东西上玩游戏,并使用iPhone(iPad)作为游戏的控制器。电视和iPhone的屏幕上会有不同的东西。

答案 1 :(得分:2)

感觉像是在鸣叫,因为Fogmeister的答案并不那么准确。

您可以轻松使用镜像并在Apple-TV屏幕上显示不同的内容。据我所知,目前任何Apple的公共API都支持 only 方式。其他地方已详细解决了here的问题。

想法是劫持外部窗口,然后给它一个你控制的viewController(和其他任何一样):

  if([[UIScreen screens] count] > 1){
        UIScreen *secondScreen = [[UIScreen screens] objectAtIndex:1];
        _secondWindow = [[UIWindow alloc] initWithFrame:secondScreen.bounds];
        self.secondWindow.screen = secondScreen;
        _externalViewController = [[YourExternalViewControllerClass alloc] init];

        self.secondWindow.rootViewController = self.externalViewController;
        self.secondWindow.hidden = NO;
    }  

在上面的示例中,_secondWindow_externalViewController实例是viewController的属性,用于设置设备视图。