iOS - Основные данные - Несколько NSFetchedResultsController в одном UIViewController - PullRequest
8 голосов
/ 20 октября 2011

Я пытаюсь создать приложение для iPad, работающее с Core Data.Но я столкнулся с проблемой дизайна и кодирования.Допустим, я добавил один UIViewController в свое окно, и внутри этого viewcontroller мне нужно отобразить два табличных представления (2 разных объекта) и 2 представления (2 других объекта) (поэтому мне нужно выбрать 4 объекта для одного UIViewController).Я нашел только учебные пособия, объясняющие, как использовать NSFetchedResultsController с одним UITableView!

Мой вопрос: должен ли я объявить 2 UITableView и 2 NSFetchedResultsController в моем viewController?Или я должен объявить 2 UITableViewController и затем внутри каждого из них объявить один NSFetchedResultsController?Как насчет двух других взглядов?Я должен использовать NSFetchRequest?Если да, то где?внутри представлений или внутри UIViewController?

Я знаю, что это много вопросов :).Заранее спасибо за помощь.

Ответы [ 2 ]

8 голосов
/ 20 октября 2011

Да, вы хотите использовать 2 NSFetchedResultsController, по одному на UITableView.NSFetchedResultsController принимает NSFetchRequest, поэтому вам нужно настроить NSFetchRequests на основе данных, которые должны отображаться в UITableViews.

Вы должны поместить всю эту логику контроллера в ваш подкласс UIViewController.

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

1 голос
/ 20 октября 2011

Как вы отображаете два вида одновременно? Как бы вы это ни делали, я бы предложил метод с двумя контроллерами, возможно, с классом-оберткой, который содержит оба и контролирует любое взаимодействие между ними. Мне кажется, это лучше всего соответствует парадигме MVC.

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