Что такое Cocoa Touch эквивалентно NSArrayController? - PullRequest
5 голосов
/ 28 ноября 2009

Я немного начал работать с Core Data, и хотя я понял, как его использовать в обычных приложениях Cocoa, в Cocoa Touch все работает немного по-другому. Как вы связываете сущности с такими объектами, как ячейки таблицы в Cocoa Touch?

Ответы [ 3 ]

6 голосов
/ 28 ноября 2009

К сожалению, привязки не поддерживаются в iPhone OS. См. эту страницу в документации разработчика Apple.

Я считаю, что это означает, что вы не можете использовать NSArrayController в iPhone OS.

4 голосов
/ 28 ноября 2009

Если вы используете CoreData на iPhone OS 3.0 и выше, вам нужно взглянуть на NSFetchedResultsController. Хотя он не является аналогом NSArrayController, он разработан специально для использования с UITableView и его контроллером.

Он обеспечивает способ загрузки элементов из постоянства по мере необходимости, учитывая производительность и ограничения памяти устройства. Это не так просто, как просто связывать вещи, но, вероятно, будет делать все, что нужно (и даже больше!) С небольшим количеством кода.

1 голос
/ 28 ноября 2009

Джергасон верен: вы не можете использовать привязки или NSArrayController с Базовыми данными на iPhone.

Вместо этого проверьте NSFetchedResultsController , который "предназначен для эффективного управления результатами, возвращенными из запроса на выборку Core Data, чтобы предоставить данные для объекта UITableView."

...