Я пытаюсь поддерживать внешний дисплей в своем приложении 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]];
ТВ-выход экран будет работать должным образом, но, конечно, я не вижу ничего на моем экране тренажера.
Кто-нибудь знает, что я должен делать? Заранее спасибо!
Спасибо, ты был прав. Я переместил обнаружение в viewDidLoad первого контроллера представления, и он сработал. – phantomhive