【问题标题】:How to create multiple table view in a View Controller for iPad?如何在 iPad 的视图控制器中创建多个表格视图?
【发布时间】:2010-10-11 14:56:49
【问题描述】:

我正在使用通用应用程序。现在我想在 iPAD 的视图控制器中创建三个表视图。我有三个带有 XIB 的独立视图控制器。那么如何将另外两个表视图添加为主控制器中的子视图。请给我一些示例应用程序和链接。在我的应用程序中,我有三个视图控制器并添加一个子视图作为表视图(不是 UITableViewController)。单击第一个表视图数据时,它导航到第二个表并单击第二个表视图数据,它导航到第三个表视图。

 Hierarchy:

   MainViewController:
     --SubTableView1 
     --SubTableView2 

见下图,

请帮帮我。

谢谢!!

【问题讨论】:

    标签: ipad uitableview uiviewcontroller


    【解决方案1】:

    我用two TableViews on one view 写了一个例子。在我的代码中,每个 TableView 都有自己的控制器,因为我可以避免在我的委托方法中使用 if else 块,因为这会导致高度和不必要的耦合。
    这些代码非常粗糙,因为我是初学者,当时我写的。即我没有在其中使用属性。
    TableViews 本身可以通过 Interface Builder 添加到它们的超级视图中。

    【讨论】:

    • 谢谢,这真的很有帮助!它帮助我找到了代码中的错误,即我在 init 方法中而不是在 viewDidLoad 中设置了委托和数据源。在 init 方法中设置它们是行不通的。
    • 我刚刚下载来看的很棒的项目。非常感谢你!我想知道是否可以有两个表视图,两个数据源但一个控制器。你怎么看? ** 编辑:现在看,您似乎在单个视图的控制器中定义了两个控制器。我更喜欢这样,而不是仅仅将不同的代码添加到一个视图中以获得多个视图,很好的实现!
    • 我看不出有什么问题
    【解决方案2】:

    表格视图只是您可以使用的视图。它不必 1:1 绑定到视图控制器,但如果不是,则需要设置拥有屏幕的自定义单视图控制器,然后让它拥有所有三个表视图作为子视图。您需要注意哪个对象是每个视图的委托和数据源,并在提供单元格等方面做正确的事情。如果同一个控制器是所有表视图的委托/数据源,则必须切换委托方法在每个上做正确的事情。

    【讨论】:

      【解决方案3】:

      我刚刚完成了我的应用程序的一部分,并且能够在一个 ipad 显示器中制作多个表格视图。

      但功劳归于另一个 StackOverflow 问题解决团队。阅读本文,我能够确定真正的问题,这给了我答案的根源。根本原因问题与使用单独的控制器管理 TableView 的数据源和委托有关......您需要仔细阅读答案。我做到了,我的应用程序现在运行良好。

      这里是项目:UITableView issue when using separate delegate/dataSource

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-22
        • 1970-01-01
        • 1970-01-01
        • 2015-04-19
        • 1970-01-01
        相关资源
        最近更新 更多