Можете ли вы оживить setRootViewController? - PullRequest
5 голосов
/ 12 марта 2012

Я использую SplitViewController, который не может быть частью контроллера навигации. Я использую SetRootViewController на IBAction, что хорошо, но это не анимированный. В идеале я хотел бы использовать ту же анимацию, что и в навигационном контроллере (вставьте слева / справа), но если это невозможно, я бы хотел использовать последовательную анимацию, когда мне это нужно.

Ответы [ 2 ]

5 голосов
/ 19 марта 2012

Я не уверен в этом, но я бы предложил следующее.

Установите UISplitViewController в качестве UIWindow rootViewController. В viewDidLoad вы делаете presentModalViewController:animated: вызов с UIViewController кнопки как модальный. Убедитесь, что вы не оживляете это. Это дает вам иллюзию, что модальное представление - это первое, что вы видите при запуске приложения. Когда вы нажимаете кнопку, вы анимируете UIViewController кнопки с помощью dismissModalViewControllerAnimated:. Теперь вы можете выбрать, как анимировать. Один из ваших вариантов - перекрестное растворение.

2 голосов
/ 19 марта 2012

Используя iOS 5.0, вы сможете использовать presentViewController:animated:completion для представления SplitViewController из вашего исходного rootViewController.

До iOS 5.0 ваш единственный шанс - использовать метод transitionFromView:toView:duration:options:completion в представлении rootViewController, что означаетвам придется приложить некоторые усилия, чтобы вручную передать несколько сообщений на SplitViewController.iOS версии 5.0 не поддерживает контейнеры ViewControllers.

Но, вероятно, вы хотите переосмыслить свой дизайн. Вы должны изначально установить SplitViewController как rootViewController.При запуске приложения (или всякий раз, когда вам нужно) вы должны представить свой LoginViewController модально.Когда пользователь входит в систему успешно, вы скрываете свой модальный вид с любой анимацией, которую хотите выбрать.

Поскольку SplitViewController является вашим основным ViewController, он должен быть rootViewController вашего приложения.

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