我在AppDelegate中设置了外部显示:
UIScreen *externalScreen = UIScreen.screens.lastObject;self.externalWindow = [[UIWindow alloc] initWithFrame:externalScreenFrame];self.externalWindow.screen = externalScreen;self.externalWindow.backgroundcolor = [UIcolor redcolor];
电视显示为红色的空白屏幕.
现在我有一个VIEwController的一些子视图,一个视图应该显示在设备和外部屏幕上.如果我在VIEwController.m中尝试这个:
[_appDelegate.externalWindow addSubvIEw:self.deviceAndTVVIEw];
deviceAndTVVIEw只会显示在外部屏幕上,而不是在设备上显示.
我需要的是在设备上安装deviceAndTVVIEw,在触摸/用户交互上更新自己,并在外部屏幕上镜像这些更新.
哪个是正确的道路呢?
谢谢阅读!
米
您正在使用后一种模式,通常被称为“镜像”,但是您真的有一个完全独立的窗口/屏幕进行管理,应该有更好的术语来指代这种 *** 作模式.
上面所描述的内容基本上是将UIVIEw从设备窗口移动到AirPlay窗口,它的工作原理与之一致!
没有一种技术方法可以在这两个窗口上都有一个UIVIEw show的单一实例 – 它将存在于一个UIVIEw层次结构中,而不是同时存在.换句话说,如果你想要在两个屏幕上显示相同的东西,你需要创建同一个UIVIEw的两个实例,并将它们分别添加到两个窗口中,然后在它们更改时更新它们.
虽然这可能不是你期待的超级“镜像”,但这可能是一件好事,因为您的UIVIEw可能在设备上具有与AirPlay设备不同的纵横比.通过具有两个不同的视图,显示相同的内容,您可以调整AirPlay视图的大小以最好地利用设备的可用分辨率.
总结以上是内存溢出为你收集整理的ios – Airplay:外部窗口镜像子视图全部内容,希望文章能够帮你解决ios – Airplay:外部窗口镜像子视图所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)