Доступ к родительскому контроллеру представления из tableViewController в представлении popover - PullRequest
1 голос
/ 03 июня 2011

Я пытаюсь реализовать представление popover в контроллере таблицы. Я хочу, чтобы пользователь выбрал опцию из списка таблиц, как показано ниже.

enter image description here

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

self.popOverViewController = [[UIPopoverController alloc]initWithContentViewController:optionsTableViewController];

После того, как пользователь выберет опцию, например «Самое горячее время», элемент управления должен быть передан из контроллера табличного представления (в представлении всплывающего окна) обратно в контроллер основного представления таблицы (родительское представление), чтобы вызвать таблицу reloadData способ.

Запрос: есть ли способ вернуть элемент управления из контроллера просмотра таблиц в контроллере всплывающих окон обратно в основной просмотр таблицы? Нужно ли использовать метод делегата для этого?

1 Ответ

4 голосов
/ 03 июня 2011

Два подхода, которые я видел, являются примерно стандартным видом тарифа:

  • создать протокол делегата для типа класса optionsTableViewController, иметь контроллер, который создает popover, реализовать его и установить себяв качестве делегата при выдаче всплывающего окна
  • используйте NSNotificationCenter (который на самом деле соответствует предполагаемой цели, если у вас есть сообщение «один ко многим», как это может быть в случае, если у вас всплывающее окно снастройка, которая влияет на кучу разных контроллеров, и вам все равно, что видно, когда пользователь запрашивает всплывающее окно)
...