В моем проекте есть много контроллеров вида (.xib-файл). Я хочу: контроллер вида может иметь только портретную ориентацию. Однако другой контроллер просмотра может иметь только ориентацию ландшафта. или контроллер вида может иметь как портретную, так и альбомную ориентацию. Теперь я хочу, чтобы контроллер вида имел только ориентацию ландшафта (без портретной ориентации). Пожалуйста, помогите мне. Спасибо вам.Как установить только портретную ориентацию для контроллера вида в iOS?
ответ
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
return UIInterfaceOrientationIsPortrait(toInterfaceOrientation);
}
ОБНОВЛЕНО:
Вы можете сделать это путем создания категории UINaviagationController
код для .h файла
@interface UINavigationController (autorotation)
-(BOOL)shouldAutorotate;
-(NSUInteger)supportedInterfaceOrientations;
и код для .m файла
@implementation UINavigationController (autorotation)
-(BOOL)shouldAutorotate
{
UIInterfaceOrientation interfaceOrientation = [UIApplication sharedApplication].statusBarOrientation;
[self.topViewController shouldAutorotate];
return YES;
}
-(NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskAll;
}
@end
Я пробовал. но он не работает :( – user2678221
my xcode не решает, что такое topViewController – user2678221
Вам нужно изменить код в соответствии с вашей пригодностью. Я только что дал вам обобщенную форму. –
Проверьте это один [ориентация интерфейса в прошивкой 6.0] (http://stackoverflow.com/questions/12404556/interface- ориентация-в-КСН-6-0). Дайте мне знать ваш ответ, попробовав это. –
спасибо. Я попробую! :) – user2678221
Пройдите http://stackoverflow.com/questions/37085341/how-to-set-certain-view-controller-to-be-landscape-and-portrait-and-certain-to-b/37086217#37086217 –