У меня есть приложение для iPhone, которое я создал как универсальное приложение для iPad/iPhone. Я реализовал splitviewcontroller для версии для iPad... все в порядке.
В моем приложении для iPhone все находится в портретном режиме, за исключением контроллера вида 2-го уровня (веб-представления), который я переопределяю shouldAutorotateToInterfaceOrientation, чтобы разрешить альбомную ориентацию. Вернувшись вверх по цепочке просмотра, я возвращаюсь к портрету.. Отлично!
Однако теперь мое приложение для разделенного просмотра на iPad вынуждено оставаться в портретной ориентации. Если я переопределяю shouldAutorotateToInterfaceOrientation в любом из моих представлений, таких как rootviewcontroller или другие, это фактически разрешает альбомный режим в моем приложении для iPhone, чего я не могу сделать. Однако это решает мою проблему с ландшафтом на iPad.
Есть ли способ обойти это? Фактически, я хочу сказать ДА параметру shouldAutorotateToInterfaceOrientation для iPad, но не для iPhone. Я пробовал это, но это не работает, оно позволяет альбомную ориентацию на обоих устройствах:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
BOOL rotate = NO;
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
rotate = YES;
}
return rotate;
}
Любой совет?