当嵌入另一个UIView中的Container时,UITableViewController不显示内容

时间:2016-01-30 17:33:41

标签: ios iphone uitableview uiview containers

我基本上做的是将UITableViewController嵌入到另一个UIView的容器中。背景是,在普通的TableView中,我无法为每个单元格单独设置静态单元格和加载图标。我按照我在网上找到的这些步骤进行了操作:

  1. 将ViewController拖到故事板上。
  2. 将TableViewController拖到故事板上。
  3. 下一步将Container视图拖到ViewController并调整其大小 你想要的尺寸(小于视图) - >当你拖动 容器视图它将创建一个segue和另一个视图。删除该segue和视图。
  4. 最后在您的容器中单击ctrl并拖动到新的容器 TableViewContoller。选择嵌入。
  5. 我的结果如下:

    Screenshot from xcode

    现在的问题是,我的Container没有显示内容。它表明它是一个表,但基本上是一个空表,而不是应该存在的小图标或文本字段。见这里:

    Screenshot from Simulator

    你们有什么建议我做错了什么或我能做些什么来展示内容?如果您需要更多信息,请发表评论。谢谢你的帮助!

    马特

3 个答案:

答案 0 :(得分:3)

好的,我找到了解决方案。我基本上在EditProfileContainerTableViewController中取出了tableViews数据源。这是产生问题的代码:

        // MARK: - Table view data source

//    override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
//        // #warning Incomplete implementation, return the number of sections
//        return 1
//    }
//
//    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
//        // #warning Incomplete implementation, return the number of rows
//        return 5
//    }

我为你们添加了一个屏幕截图,如果有人有类似问题他可以联系我。我很乐意提供帮助:)

EditProfileContainerTableViewController

答案 1 :(得分:1)

1)可能会发生这种情况,因为delegate将是tableViewController而不是查看控制器。 2)因此,不要在tableViewController&中添加TableView添加ViewController。写delegate& datasource

中的ViewController个方法

答案 2 :(得分:0)

你是对的。基本上,您不能拥有静态单元格并保留TableView数据源部分(即默认情况下,每个部分函数的部分数和行数)。当控制器加载时,它将根据这些功能重新创建动态单元格,从而隐藏静态单元格