Xcode - 选择依赖的TableView列表

时间:2012-11-11 14:00:32

标签: iphone objective-c ios xcode

我想创建一个选择依赖列表,但我不知道在我的应用程序中执行此操作的最佳方法是什么。

selection dependency list example

根据第一个列表中的用户选择,他们将获得另一个包含其他选项的列表。其他列表将包含不同的数据。在完成列表选项中的所有选择后,用户将看到一个最终的表格视图,其中包含他们在过程中选择的所有项目。

我在考虑创建一个包含所有列表选项的TableView。 从TableView中只选择一个项目会将用户移动到另一个TableView,而另一个列表依赖于他之前的选择。

不幸的是,通过这样做,我最终会在我的故事板上有13个不同的TableView控制器,它感觉不对。

我确信必须有另一种更有效的方法,但我只是不知道如何。

请指教,谢谢!

1 个答案:

答案 0 :(得分:0)

UITableViewDataSource协议救援。它旨在解决这个确切的问题。您将编写一个UITableViewController,然后为每个列表换一个不同的UITableViewDataSource

http://developer.apple.com/library/ios/#documentation/uikit/reference/UITableViewDataSource_Protocol/Reference/Reference.html

通常情况下,与网络上的大多数示例一样,datasource的{​​{1}}属性设置为UITableViewController。但这就是它存在的原因,因此当您只是修改为表格生成数据的方式时,您无需在任何地方复制/粘贴self代码。

根据数据集的“不同”程度,您甚至可能不需要单独的UITableViewController,而只需修改您在UITableViewDataSource内使用的数据结构。

在较高的层面上,您的设计可能如下所示:

  • BookStoreTableViewController
  • BookListTableViewDataSource
  • AuthorListTableViewDataSource
  • PublisherListTableViewDataSource

以下是显示不同列表的示例方法:

UITableViewDataSource
相关问题