Я писал свое Повсеместное применение в режиме портрета, и теперь приблизительно после 15 файлов пера, много много viewCotnrollers, я хотел бы реализовать shouldAutorotateToInterfaceOrientation и разработать некоторые экраны в Альбомном режиме.
добавление:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return YES;
}
ко ВСЕМ моим viewControllers, не делает работы.
Во время Отладки я вижу, что этот метод называют, но это просто не будет работать! не в средстве моделирования, не в устройстве, не в iPhone, не в IPad!
я искал некоторые ответы на форуме и видел, что некоторые советуют для использования:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation == UIInterfaceOrientationPortrait ||
interfaceOrientation == UIInterfaceOrientationLandscapeLeft ||
interfaceOrientation == UIInterfaceOrientationLandscapeRight ||
interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown );
}
Не сделал работавший также,
добавление:
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
и
[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications];
к моему viewDidLoad и viewDidUnload соответственно не сделал работавший также.
Я заблудился.. Любая справка сделает!
просто еще одна информация... все мои Представления имеют тип UIControl, когда мне был нужен TuchUpInside для работы.
Appriciate Ваша справка.
Убедитесь, что все ваши родительские представления имеют autoresizesSubviews = YES. Вам может потребоваться сделать это в коде, если вы не установили пружины и распорки в IB для всех ваших представлений.
Цитата из Руководства пользователя Interface Builder:
Важно: в файле какао-пера, если вы не устанавливайте пружины или стойки для ваше представление в Интерфейсном Разработчике, но затем используйте setAutoresizingMask: метод для добавления поведения автоматического изменения размера в время выполнения, ваше представление может все еще не показать правильное автоизменение размера поведение.Причина в том, что интерфейс Builder отключает автоматическое изменение размера родительский вид дочерних элементов в целом, если у этих детей нет источников и распорки установлены. Чтобы включить автоматическое изменение размера поведение снова, вы должны передать ДА на setAutoresizesSubviews: метод родительский вид. После этого дочерние представления должны автоматически изменяться в размерах.
Еще пара вещей, о которых следует знать:
UINavigationController будет выполнять автоповорот только в том случае, если его корневой контроллер представления также настроен на автоповорот.
UITabBarController будет выполнять автоповорот только в том случае, если все его контроллеры представления настроены на автоповорот.