2012-07-28 2 views
1

Я пытаюсь поддерживать внешний дисплей в своем приложении iOS без использования каких-либо файлов .xib.ios внешний дисплей программно

прямо сейчас мой код содержит следующее:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ 
    if ([[UIScreen screens] count] > 1){ 
     externalScreen = [[UIScreen screens] objectAtIndex:1]; 
     UIScreenMode *current = [[[[UIScreen screens]objectAtIndex:1]availableModes]objectAtIndex:0]; 
     externalScreen.currentMode = current; 
     externalWindow = [[UIWindow alloc] initWithFrame:[externalScreen bounds]]; 
     externalWindow.screen = externalScreen; 
     externalWindow.clipsToBounds = YES; 

     extController = [[ExternalController alloc] init]; 
     [externalWindow addSubview:extController.view]; 
     [externalWindow makeKeyAndVisible]; 
    } 
    self.window = [[UIWindow alloc] initWithFrame:[[[UIScreen screens] objectAtIndex:0] bounds]]; 

    mainController = [[ViewController alloc] init]; 
    [self.window addSubview:mainController.view]; 
    self.window.backgroundColor = [UIColor whiteColor]; 
    [self.window makeKeyAndVisible]; 
} 

, когда я запускаю это, ТВ-выход экран закроется немедленно. Если я закомментировать эту строку:

//self.window = [[UIWindow alloc] initWithFrame:[[[UIScreen screens] objectAtIndex:0] bounds]]; 

ТВ-выход экран будет работать должным образом, но, конечно, я не вижу ничего на моем экране тренажера.

Кто-нибудь знает, что я должен делать? Заранее спасибо!

ответ

3

Предлагаю вам попробовать образец кода TVOut на GITHub - https://github.com/JohnGoodstadt/TVOut.

Он использует похожий код для вашего, но упакован в класс, который вы можете скопировать и позвонить из своего собственного кода.

Он должен решить вашу проблему с дисплеем. Кстати, я бы не стал делать свой код уже в «didFinishLaunchingWithOptions», но позже в первом контроллере представления.

+0

Спасибо, ты был прав. Я переместил обнаружение в viewDidLoad первого контроллера представления, и он сработал. – phantomhive

Смежные вопросы