Вопрос

У меня есть главное меню в моем приложении, поддерживающем только режим ландшафта. Я внедряю ограничение ландшафта путем настройки UIRootViewController::shouldAutorotateToInterfaceOrientation:...И у меня есть еще одна сцена с поддержкой портретного режима. Таким образом, проблема появляется, когда я перехожу из другой сцены в главное меню в портретном режиме: приложение не вращается в ландшафт автоматически, и я не могу найти метод кода, чтобы вручную повернуть его.

Есть решение? Было бы благодарно.

РЕДАКТИРОВАТЬ: Извините, я забыл добавить детали. RootViewController распространен для меню и другой сцены. И более того, эти сцены находятся в одном общем взгляде (мое приложение использует OpenGL), поэтому, прежде чем я введу меню с портретной сцены, я установил UIRootViewController::shouldAutorotateToInterfaceOrientation: Чтобы вернуть да только для ландшафта.

Это было полезно?

Решение

Если ваша другая сцена с поддержкой портретной поддержки контролируется другим UiviewController, то вы можете использовать это контроллер этого представления. Во многих случаях этого должно быть достаточно. Конечно, если вам нужно сделать какую -то причудливую ротацию для какого -то контроллера представления, но не для других, то все становится немного сложнее.

Другие советы

Нет простого способа сделать это, за исключением [uidevice setorientation:], который не открыт для разработчиков и приводит к отказу от приложения Apple.

Вы можете применить вращение на свой слой, который создаст тот же эффект.

myview.layer.transform = CATransform3DMakeRotation(M_PI/2, 0.0f, 0.0f, 1.0f);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top