iOS Table Views и View Controller - PullRequest
       20

iOS Table Views и View Controller

0 голосов
/ 18 декабря 2010

Я пытаюсь написать свое первое приложение для iPad, и у меня возникла проблема.

У меня есть контроллер основного вида с кнопкой.Как только кнопка нажата, она запрашивает список информации с веб-сервера и возвращает данные.Эти данные я хочу поместить в табличное представление во всплывающем окне.

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

Мой вопрос заключается в том, как получить данные (словарь или массивы) из контроллера основного представления в контроллер представления Popover?

Я действительно потерян.

Спасибо

Джеймс

Ответы [ 3 ]

1 голос
/ 18 декабря 2010

Необходимо учитывать два шаблона проектирования: делегирование и уведомление . в более общем смысле также KVO полезно для обновления вашего представления, если модель изменилась. Конечно, объект, прослушивающий уведомления или выступающий в качестве делегата, является контроллером этого представления, НИКОГДА самого представления.

Есть две вещи, которые вы хотите избежать в любое время: хранить вещи в глобальных переменных или в синглетах и ​​создавать «суперобъекты», которые действуют, скажем, как модель и контроллер. Придерживайтесь парадигмы MVC и попытайтесь потерять пару ваших объектов и подумайте, какому объекту принадлежит другой объект. Это важно для управления памятью, и если вы не правильно его внедрите, оно вернется к вам позже.

Ознакомьтесь с сеансом № 116 - Model-View-Controller для iPhone OS из видеороликов сеанса WWDC10 и сеансом № 123 - Методы просмотра iPhone с WWDC09.

Видео WWDC10 доступно бесплатно на сайте разработчика Apple.

0 голосов
/ 18 декабря 2010

описали другую возможность несколько секунд назад:

Передача массива между контроллерами представления?

0 голосов
/ 18 декабря 2010

Привет, Джеймс, я советую тебе сначала сделать свою домашнюю работу и попытаться понять, как работает так называемая структура делегат в большинстве приложений для iOS.

Для большей ясности, ваш контроллер основного представления станет делегатом, а ваш контроллер представления popover станет дочерним такого делегата. Делегат отвечает за представление своего дочернего контроллера. В то же время дочерний контроллер отвечает за запрос данных и уведомление о любых изменениях на своем контроллере-делегате.

Таким образом, ваш контроллер поповера может получать необходимые данные от вашего контроллера основного представления, и в то же время, когда пользователь хочет закрыть представление поповера, контроллер представления поповера обнаруживает инструкции пользователя и информирует основное просмотр контроллера, чтобы закрыть его.

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