Устройство iOS8 застревает в книжной ориентации, но отображается в альбомной ориентации

Это странная проблема, которая может быть связана со всеми проблемами ориентации, которые я вижу в iOS8.

У меня универсальное приложение. Версия для iPad поддерживает только альбомную ориентацию, а версия для iPhone — только портретную.

Когда пользователь открывает версию для iPad, она открывается в ландшафтном режиме, что и ожидается. Однако каждый элемент управления в правой части представления не реагирует на события касания пользователя. Затронутая область имеет ширину 256, а область слева, которая «работает», имеет ширину 768 (ширина портрета). Поэтому, даже если приложение открывается в альбомной ориентации, приложение считает, что оно в портретной ориентации. Поскольку телефонная версия поддерживает только книжную ориентацию, проблема не проявляется там, хотя я считаю, что проблема не связана с конкретным устройством, однако проблема затрагивает только устройства под управлением iOS8.

Приложение изначально разрабатывалось для iOS4 и с тех пор претерпело несколько итераций. Однако большая часть исходного кода и перьев все еще используется. Другие проблемы с ориентацией появились с iOS8 и могут быть связаны или нет, кто знает?

Поскольку приложение изначально было разработано для iOS4, раскадровки не использовались и не используются до сих пор. Я проверил некоторые вещи: удостоверился, что все перья отмечены флажком 'Автоматическое изменение размера подвидов', и удостоверился, что в списке приложений существуют только альбомные ориентации (проверено в XML). Вот фрагмент кода из AppDelegate didFinishLaunchingWithOptions:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window.rootViewController = self.viewController;
    [self.window makeKeyAndVisible];
    [self.window setFrame:[[UIScreen mainScreen] bounds]];

    self.viewController = [[AppMainViewController alloc] initWithNibName:nib bundle:nil];

    //...

    return YES;
}

введите здесь описание изображения

На изображении я показываю как портретный, так и альбомный размеры. Как я упоминал ранее, контроллер представления рендерится и выглядит так, как должен в альбомной ориентации, но все, что находится в красной области изображения, не реагирует на касания пользователя.

Возможно, я слишком долго рассматривал эту проблему, и, надеюсь, у кого-то есть понимание, почему это происходит. Кто угодно? Спасибо!


person Pheepster    schedule 20.11.2014    source источник
comment
Согласно примечанию к выпуску iOS 8.1.1 support.apple.com/kb/ DL1758?viewlocale=en_US&locale=en_US, похожая ошибка была исправлена, возможно, она одна.   -  person Vanya    schedule 20.11.2014
comment
Вы видите ту же проблему на симуляторе? Или только аппаратное обеспечение iPad (2?)? Возможно, связано с этой проблемой: заголовок stackoverflow.com/questions/30237816/   -  person pkamb    schedule 01.06.2015
comment
Вы когда-нибудь находили решение? У меня такая проблема, но только на iOS 8.1. Очень странно!   -  person Politta    schedule 01.08.2016
comment
Найденное решение сработало для меня: stackoverflow.com/a/26040354/2661255   -  person Politta    schedule 01.08.2016