Выдвижение ViewController внутри SplitViewController - PullRequest
2 голосов
/ 25 февраля 2012

У меня есть UISplitViewController, содержащий UINavigationController слева и другой пользовательский VC справа.Слева как система фильтрации, так что виды будут выталкиваться / выдвигаться на него.Справа отображаются фактические данные.

У меня есть подклассы UISplitViewController и UINavigationController.

У меня есть эти настройки в IB, с третьим VC в качестве rootViewController для Nav Controller (содержит списокопции меню).В viewDidLoad моего подкласса UISplitViewController я делаю

    splitNavVc = [self.viewControllers objectAtIndex:0]; // get reference to nav controller for navigation
    [self.splitNavVc pushViewController:recipeTable animated:true]; // push the first level view on by default. As though the user had selected an item from the menu controller at the nav controller's root.

Это работает нормально, но когда я прихожу, чтобы открыть верхний VC, чтобы снова показать меню в корне:

[self.splitNavVc popViewControllerAnimated:true];

Переходне левый -> правый только на левой панели, а скорее верхний -> нижний переход всего splitViewController.Странно то, что хотя при переходе на весь экран правая часть моего splitViewController фактически не меняется.

Как будто что-то где-то не подключено.

1 Ответ

1 голос
/ 26 февраля 2012

В конечном итоге решается с помощью popToRootViewControllerAnimated.

Я подключил контроллер навигации к его корневому контроллеру, а затем создал сегменты в моей раскадровке для двух представлений «развертки». Я использовал performSegueWithIdentifier, чтобы нажать ViewController и вытащить его снова, я использовал

[self.menuVc.navigationController popToRootViewControllerAnimated:true]; // menuVc is the rootViewController in this case

...