如何在 iPad 的视图控制器中创建多个表格视图?
Posted
技术标签:
【中文标题】如何在 iPad 的视图控制器中创建多个表格视图?【英文标题】:How to create multiple table view in a View Controller for iPad? 【发布时间】:2010-10-11 14:56:49 【问题描述】:我正在使用通用应用程序。现在我想在 iPAD 的视图控制器中创建三个表视图。我有三个带有 XIB 的独立视图控制器。那么如何将另外两个表视图添加为主控制器中的子视图。请给我一些示例应用程序和链接。在我的应用程序中,我有三个视图控制器并添加一个子视图作为表视图(不是 UITableViewController)。单击第一个表视图数据时,它导航到第二个表并单击第二个表视图数据,它导航到第三个表视图。
Hierarchy:
MainViewController:
--SubTableView1
--SubTableView2
见下图,
请帮帮我。
谢谢!!
【问题讨论】:
【参考方案1】:我用two TableViews on one view 写了一个例子。在我的代码中,每个 TableView 都有自己的控制器,因为我可以避免在我的委托方法中使用 if else
块,因为这会导致高度和不必要的耦合。
这些代码非常粗糙,因为我是初学者,当时我写的。即我没有在其中使用属性。
TableViews 本身可以通过 Interface Builder 添加到它们的超级视图中。
【讨论】:
谢谢,这真的很有帮助!它帮助我找到了代码中的错误,即我在 init 方法中而不是在 viewDidLoad 中设置了委托和数据源。在 init 方法中设置它们是行不通的。 我刚刚下载来看的很棒的项目。非常感谢你!我想知道是否可以有两个表视图,两个数据源但一个控制器。你怎么看? ** 编辑:现在看,您似乎在单个视图的控制器中定义了两个控制器。我更喜欢这样,而不是仅仅将不同的代码添加到一个视图中以获得多个视图,很好的实现! 我看不出有什么问题【参考方案2】:表格视图只是您可以使用的视图。它不必 1:1 绑定到视图控制器,但如果不是,则需要设置拥有屏幕的自定义单视图控制器,然后让它拥有所有三个表视图作为子视图。您需要注意哪个对象是每个视图的委托和数据源,并在提供单元格等方面做正确的事情。如果同一个控制器是所有表视图的委托/数据源,则必须切换委托方法在每个上做正确的事情。
【讨论】:
【参考方案3】:我刚刚完成了我的应用程序的一部分,并且能够在一个 ipad 显示器中制作多个表格视图。
但功劳归于另一个 *** 问题解决团队。阅读本文,我能够确定真正的问题,这给了我答案的根源。根本原因问题与使用单独的控制器管理 TableView 的数据源和委托有关......您需要仔细阅读答案。我做到了,我的应用程序现在运行良好。
这里是项目:UITableView issue when using separate delegate/dataSource
【讨论】:
以上是关于如何在 iPad 的视图控制器中创建多个表格视图?的主要内容,如果未能解决你的问题,请参考以下文章