UIPopoverController в SplitViewController - PullRequest
       29

UIPopoverController в SplitViewController

3 голосов
/ 13 апреля 2011

У меня довольно сложная проблема, которую я опишу настолько хорошо, насколько это возможно.

У меня есть приложение для iPad и SplitviewController в качестве основного вида.В портретном режиме SplitviewController скрывает табличное представление слева, так что DetailviewController виден только.Пока все хорошо.

То, как вы используете это, насколько я понимаю, заключается в том, что если я коснусь ячейки слева, я заменю подробный вид справа новым видом, который я хочу показать.,Для этого я использую свойство viewControllers.

Теперь для отображения Popover у меня есть панель инструментов вверху и кнопка меню для отображения Popover.

Вот в чем дело:

Я нажимаю на ячейку и заменяю DetailviewController новым Viewcontroller.Но теперь Popovercontroller ушел, так как он был объявлен в заголовке старого ViewController.

Проблема: Когда я нажимаю на кнопку меню в режиме порта, всплывающее окно не может отображаться, поскольку сейчас оно равно нулю, поскольку оно еще не было инициировано.

Но я могу сделать следующее.: Я поворачиваю iPad в горизонтальное положение и снова поворачиваю его.Всплывающее окно возвращается, потому что в методе делегата контроллера splitview происходит следующее:

- (void) splitViewController: (UISplitViewController*)svc willHideViewController:(UIViewController *)aViewController withBarButtonItem:(UIBarButtonItem*)barButtonItem forPopoverController: (UIPopoverController*)pc {

    self.popoverController = pc;
}

Откуда этот компьютер?Как я могу сделать это сам.

Если я пытаюсь перераспределить Popovercontroller, это приводит к разрыву SplitviewController и появляются артефакты в приложении.

Надеюсь, я достаточно хорошо объяснил свою проблему.

Есть идеи?

1 Ответ

2 голосов
/ 20 апреля 2011

Взгляните на этот пример кода от Apple:

http://developer.apple.com/library/ios/samplecode/MultipleDetailViews/Introduction/Intro.html

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

...