Лучший способ обрабатывать несколько UITableViews в одном UIViewController? - PullRequest
5 голосов
/ 12 января 2010

У меня есть UIViewController, который должен отображать tableView с несколькими источниками данных. UITableView занимает примерно половину размера экрана, и есть кнопки «вверх» и «вниз», позволяющие просматривать различные данные. Каждый раз, когда нажимаются кнопки «вверх» и «вниз», я хотел бы в конечном итоге использовать UIViewAnimationTransitionCurlDown или что-то подобное для отображения следующего UITableView.

Вопрос: нужно ли мне несколько UIViewControllers для этого, с tableView, встроенным в каждый? Должен ли я просто создать один экземпляр UITableView и изменить его источник данных при нажатии кнопки вверх или вниз? Если это только один экземпляр UITableView, как мне получить скручивание при переходе через ту часть экрана, которая требуется, чтобы он выглядел так, как будто появляется новый tableView?

1 Ответ

5 голосов
/ 12 января 2010

Почему бы не каждому табличному представлению принадлежать его собственному UITableViewController и вкладывать их в контроллер представления текущего экрана? Таким образом, контроллер представления экрана отвечает за замену своих подпредставлений, у каждого из которых есть контроллер представления таблицы, содержащий необходимую логику для отображения их данных.

В конце концов, все сводится к тому, как выглядят ваши функции и наборы данных. Может оказаться, что проще реализовать код источника данных табличного представления и делегировать код один раз, добавив фактический источник данных в этот класс, или проще написать собственный код источника данных для каждого табличного представления.

...