Вам необходимо переопределить shouldAutorotateToInterfaceOrientation
.Хорошее место, чтобы поместить это в делегат приложения.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad &&
UIInterfaceOrientationIsLandscape(interfaceOrientation))
{
return YES;
}
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone &&
UIInterfaceOrientationIsPortrait(interfaceOrientation))
{
return YES;
}
return NO;
}
Я не уверен, но это также может поддержать телефон вверх ногами, что является HIG нет-нет.Возможно, вы захотите использовать interfaceOrientation == UIInterfaceOrientationPortrait
вместо этого для телефона.