iOS - Как создать представления из сущностей Core Data - PullRequest
1 голос
/ 20 января 2012

Я реализовал Core Data в своем приложении и пытаюсь найти лучший способ создания представлений из объектов модели.

Объект модели My Cat обладает следующими свойствами:

@property (nonatomic, retain) NSString * image;
@property (nonatomic, retain) NSString * title;
@property (nonatomic, retain) NSString * desc;

Я хочу создать представление Cat, которое отображает изображение в виде UIImage и отображает заголовок и описание в виде меток. Нужно ли использовать модельный прокси? Я думаю, что КВО также будет вовлечено. Кто-нибудь знает хороший учебник для этого? Кажется, что это будет обычная задача, но единственные учебники, которые я могу найти, касаются только Базовых данных и не объясняют, как создавать объекты представления из данных.

1 Ответ

3 голосов
/ 21 января 2012

Вы связываете свой объект Cat Model с вашим объектом Cat View, используя объект Controller.

Вам нужно посмотреть учебники по MVC.

Вы, вероятно, имеете в виду Binding. Где вы привязываете любые изменения в модели для представления. Какао имеет привязки, но только в Mac OS:

Привязки какао

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

Это было от: Портирование из какао

Также взгляните на NSFetchedResultsController. Это тоже может быть интересно.

Вы должны будете создать свой собственный класс привязок. У нас был один в старом проекте iOS, над которым я работал.

Класс Binding будет использовать KVO и иметь путь к ключу источника, путь к ключу назначения, исходный объект и объект назначения. При инициализации вы настраиваете своего наблюдателя KVO на источнике (вашей модели), а когда он изменяется, вы распространяете это изменение в пункте назначения (вашем представлении), используя путь ключа назначения. Вы должны создать Biding в вашем объекте контроллера - так как View и Model не должны общаться друг с другом напрямую (плохо MVC)

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