Основной вид, который не должен вращаться, но подпредставления, которые должны, включая UIPopoverController - PullRequest
0 голосов
/ 25 февраля 2011

Буду признателен за некоторую помощь, прежде чем уделять больше времени методам проб и ошибок.

Представьте себе следующее: я только начинаю создавать что-то для iPad, которое будет выглядеть как приборная панель с цифрой нанабирает на нем.При вращении iPad (книжная, альбомная и т. Д.) Фон не должен вращаться, положение циферблатов должно оставаться, а внутренняя часть циферблатов должна поворачиваться в правильное положение.Таким образом, основной вид не должен вращаться, но подпредставления (внутри циферблатов) должны.Я делал это на iPhone раньше, сказав viewController только в портретном режиме, а затем проверил UIDeviceOrientation, так что я подумал, что это будет легко.Но моя головная боль начинается при отображении UIPopoverController.Поскольку я не изменяю UIInterfaceOrientation, UIPopoverController всегда будет в портретной ориентации.

Идеальным решением было бы то, что основной вид (self.view из viewController) не наблюдает изменения в ротации, но разрешает подпредставлениясделать это, но из того, что я понимаю, это невозможно.Единственное другое решение, которое я мог придумать, это не анимировать изменение поворота, а просто переместить подпредставления (циферблаты) в их новую позицию.Анимация их (подпредставления) делает танец повсюду.Но я не нашел хорошего решения о том, как это сделать.

Есть мысли у кого-нибудь?

1 Ответ

0 голосов
/ 26 февраля 2011

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

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

Редактировать: просто прочитать о васналичие контроллера поповера.

Что касается поповера, то API управляет авторотацией, чтобы скрыть поповер и затем снова показать его в конце ротации.Не должно быть слишком сложно реализовать подобное поведение.

Еще одна вещь, которая приходит мне в голову: это то, что вы не хотите вращать, просто фон?Будет ли работать только два фона: один для портрета, другой для пейзажа, между которыми вы можете переключаться?Возможно, это выглядит не очень красиво, но, вероятно, это будет проще, чем воссоздавать поведение самовращения самостоятельно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...