У меня есть UIViewController
, который должен быть способен отображать tableView
с несколькими источниками данных. UITableView
охватывает примерно половину размера экрана, и есть кнопка вверх и вниз, которая позволяет вам просматривать разные данные. Каждый раз, когда нажата кнопка «Вверх» и «Вниз», я хотел бы в конечном счете использовать UIViewAnimationTransitionCurlDown
или что-то похожее на отображение следующего UITableView
.Лучший способ обработки нескольких UITableViews в одном UIViewController?
Вопрос: нужно ли мне несколько UIViewControllers
для этого, с встроенным в каждый из них tableView
? Должен ли я просто создать один экземпляр UITableView
и изменить его источник данных при нажатии кнопки «вверх» или «вниз»? Если это всего лишь один экземпляр UITableView
, как мне удастся получить завиток на той части экрана, которую он занимает, чтобы сделать его похожим на новый tableView
?
Как бы вы «гнезлили» один контроллер вида с другим? Я понимаю добавление subviews и все, но uitableviewcontroller? – randombits
Ваш «родительский» контроллер представлений будет отвечать за создание соответствующих контроллеров табличных представлений и отображение их представлений. Нет никакой причины, по которой вы не можете одновременно просматривать несколько изображений на экране, управляемых отдельными контроллерами. – pix0r
Да, в основном ваш метод viewDidLoad может просто сделать что-то вроде topTableController = [[MyTopTableController alloc] init]; topTableController.view = self.topTableView; topTableController.delegate = self; (или сделать что-то подобное в файле nib) ... Посмотрев на это, похоже, просто проще использовать один контроллер на таблицу, а не пытаться использовать один контроллер в качестве делегата/ds для нескольких таблиц. Вы можете это сделать, потому что методы делегата передаются указателем на UITableView, который вы можете, если() или switch(), но может быть более чистым, чтобы использовать несколько «субконтроллеров», – Nimrod