Метод ориентации устройства не работает для ios6

My supports both Landscape & Portrait mode in ios6. I also try with new methods of device rotation, But the methods are not called & it does not support the orientation.

Мой код выглядит следующим образом:

-(NSUInteger)supportedInterfaceOrientations
{
    NSLog(@"supportedInterfaceOrientations...");
    return UIInterfaceOrientationMaskAll;
}

-(BOOL)shouldAutorotate
{
    NSLog(@"shouldAutoRotate...");
    return YES;
}

Я не знаю вопроса для этого.

Благодаря...

1
добавлено
Просмотры: 1
de
да, он поддерживает всю ориентацию.
добавлено автор user1673099, источник
да, но с контроллером разделенного вида
добавлено автор user1673099, источник
проверьте, поддерживаются ли функцииInterfaceOrientations и shouldAutorotate во всех классах.
добавлено автор P.J, источник
Проверьте ориентированную ориентацию интерфейса
добавлено автор Levi, источник
Тогда я думаю, что и ваш мастер, и детали должны поддерживать ориентацию (эти методы должны быть реализованы в обоих)
добавлено автор Levi, источник
Используете ли вы UINavigationController?
добавлено автор Paresh Navadiya, источник

2 ответы

Попробуй это,

Поскольку вы указали: целью развертывания является ios5, но вы запускаете приложение в ios6.

В файле .pch,

#define IOS_OLDER_THAN_6 ( [ [ [ UIDevice currentDevice ] systemVersion ] floatValue ] < 6.0 )

#define IOS_NEWER_OR_EQUAL_TO_6 ( [ [ [ UIDevice currentDevice ] systemVersion ] floatValue ] >= 6.0 )

И в файле Controller, Check with Conditions,

#ifdef IOS_OLDER_THAN_6
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
     return toInterfaceOrientation;
}
#endif

#ifdef IOS_NEWER_OR_EQUAL_TO_6
-(BOOL)shouldAutorotate {
     return YES;
}

- (NSUInteger)supportedInterfaceOrientations {
     return (UIInterfaceOrientationMaskAll);
}
#endif

Надеюсь, это будет полезно для вас. Благодарю.

0
добавлено
но shouldAutorotate & supportedInterfaceOrientation не вызывается в ios6
добавлено автор user1673099, источник
Это сработает для меня. Попробуйте таким образом, как я уже говорил.
добавлено автор MS., источник

Do you support all Interface Orientations in the Target respectively in the Info.plist

Supported Interface Orientations You would need to check all these images to support all Orientations

0
добавлено
да, все черные (т. е. выбрано)
добавлено автор user1673099, источник
Цель развертывания - ios5, но я запускаю приложение в ios6
добавлено автор user1673099, источник
да, но shouldAutorotateToInterfaceOrientation не вызывается в ios6
добавлено автор user1673099, источник
И интерфейс не авторотируется? Является ли ваша целевая iOS 6 или iOS 5?
добавлено автор lukaswelte, источник
И вы также попробовали метод shouldAutorotateToInterfaceOrientation (старый)?
добавлено автор lukaswelte, источник
Возможно, это поможет вам stackoverflow.com/q/12577879/1578508
добавлено автор lukaswelte, источник