2 UIViewController 1 Просмотр - PullRequest
       34

2 UIViewController 1 Просмотр

2 голосов
/ 15 июня 2011

Это вопрос касательно дизайна iPhone C. Как можно, чтобы 2 UIViewControllers управляли одним и тем же видом? Каждый UIViewController будет создаваться в разное время, но их представления, по сути, одно и то же.

Чтобы помочь объяснить, вот пример:

Допустим, у меня есть один ViewController, который синхронизирует список задач с сервера, позволяет пользователю редактировать / удалять эти задачи и отображает другую информацию в представлении (например, сообщения о состоянии) и т. Д. В отдельное время я Я хочу показать список задач, доступных только для чтения, используя одно и то же представление (поскольку представление уже создано, создано tableView, есть текстовое поле сообщения о состоянии и т. д.), но на основании разных вещей, я хочу, чтобы это представление действовать по-другому и обновлять различные сообщения о состоянии.

Так что в этом примере я хочу повторно использовать представление, но использовать 2 разных контроллера в зависимости от того, где находится пользователь. Если он / она находится в режиме редактирования, отобразите UIViewController 1, который управляет VIEW 1. Если он / она находится в режиме чтения, отобразите UIViewController 2, который управляет VIEW 1.

Мне интересно, как лучше спроектировать это, если это 1. возможно или 2. если я просто дублирую VIEW 1 как VIEW 2, и UIViewController 2 будет управлять VIEW 2, даже если они будут точно такими же.

Заранее спасибо за помощь.

1 Ответ

0 голосов
/ 15 июня 2011

Создайте базовый класс UIViewController, с которого каждый из вас происходит.Поместите все базовые объявления элементов интерфейса (обычные ivars или IBOutlets) в базовый класс.Если вы используете InterfaceBuilder, то сделайте владельца файла базовым классом.

...