0

デバイス画面のミラーリング以外に、セカンド ディスプレイが表示されません。テレビには常にミラーリングされたデバイスの画面しか表示されません。これは私のコードです。誰かが私を助けてくれることを願っています。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NSNotificationCenter *center = [NSNotificationCenter defaultCenter];

[center addObserver:self selector:@selector(configureScreens) name:UIScreenDidConnectNotification object:nil];

[center addObserver:self selector:@selector(configureScreens) name:UIScreenDidDisconnectNotification object:nil];

[self configureScreens];

return YES;
}

-(void)configureScreens
{
NSUInteger screenCount = [[UIScreen screens] count];

NSLog(@"%u",screenCount);

if (screenCount == 1) {
    //single windows
}else if(screenCount == 2) {
    UIScreen *appleTvScreen = [[UIScreen screens] objectAtIndex:1];
    UIWindow *tvWindow = [[UIWindow alloc] initWithFrame:appleTvScreen.bounds];
    tvWindow.screen = appleTvScreen;
    tvWindow.backgroundColor = [UIColor redColor];

    tvWindow.rootViewController = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"tv"];

    tvWindow.hidden = NO;
}
}
4

1 に答える 1

1

GitHub のサンプル ソース コード TVOut を試すことをお勧めします - https://github.com/JohnGoodstadt/TVOut

あなたのコードと同様のコードを使用しますが、コピーして独自のコードから呼び出すことができるクラスにパッケージ化されています。

それはあなたの表示の問題を解決するはずです。

于 2012-09-17T12:41:25.080 に答える