CoreData и DataBindings с какао - PullRequest
2 голосов
/ 17 июля 2010

Я разрабатываю небольшое приложение Mac OSX для управления книгами баз данных с CoreData и DataBindings. У меня есть TableView со всеми авторами книг. Я хотел бы другой TableView, который представляет все книги, написанные автором, выбранным в предыдущей таблице ... Обе таблицы управляются двумя ArrayController в IB. Моя проблема в том, что я не знаю, как отфильтровать вторую таблицу / ArrayController с выбором первой таблицы. Я также должен вставить новую книгу в отфильтрованный ArrayController.

Я могу это сделать? Большое спасибо!

Ответы [ 2 ]

1 голос
/ 18 июля 2010

Я на самом деле написал учебник, который может помочь http://themikeswan.wordpress.com/2009/05/22/7/ короткий ответ: вы связываете контроллер массива с таблицей книг, чтобы получить его набор содержимого из выбора другого контроллера массива. Контроллер книжного массива затем получит свои элементы от того, какой автор выбран в контроллере массива автора. Вам также нужно просто добавить кнопку для добавления книг и подключить ее к add: методу контроллера массива книг (я еще не пробовал этого, но в теории это должно работать, я не уверен, что отношения автора будут установить правильно, хотя).

0 голосов
/ 17 июля 2010

Вы должны прочитать о NSPredicate , контроллеры массива поддерживают их для фильтрации содержимого.Чтобы добавить новую книгу, вы должны переопределить метод «add:» ArrayController (создать его подкласс) или написать где-нибудь в контроллере окна собственный метод, который будет создавать новый объект и помещать его в ArrayController с помощью addObject: call.

...