UIScreen屏幕始终返回1分屏(UIScreen screens always return 1

2019-09-19 05:31发布

我想显示在Apple TV上的照片与Airplay的不镜像模式。 但[UIScreen屏]方法始终返回1个画面(主画面)镜像时为OFF。 我想我的图片显示相同的相册程序(没有的Airplay镜像)。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(screenDidConnect:) name:UIScreenDidConnectNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(screenDidDisconnect:) name:UIScreenDidDisconnectNotification object:nil];

我使用他们,但他们只有当镜像是工作。

请帮我。 非常感谢! 我使用的是苹果TV1和iPad 2(iOS版5.0.1)

Answer 1:

嗯,这是一个有点误导,确实如此。 你应该进行如下操作:

  • 的Airplay镜像选项应该是ON
  • 然后,您创建一个新UIWindow ,并将其附加到第二个屏幕
  • 只要您发送makeKeyAndVisible这个新UIWindow ,它覆盖镜像并显示新的内容。
  • 您可以添加意见或根视图控制器作为应用程序的主体部分

下面的代码:

UIScreen *secondScreen = [[UIScreen screens] objectAtIndex:1];
self.secondWindow = [[UIWindow alloc] initWithFrame:secondScreen.bounds];
[self.secondWindow setScreen:secondScreen];
[self.secondWindow setBackgroundColor:[UIColor greenColor]];
[self.secondWindow makeKeyAndVisible];


文章来源: UIScreen screens always return 1 screen