如何显示放置在UIView .xib文件中的UITableView?

时间:2018-11-30 10:27:42

标签: ios uitableview

将自定义UIView加载到ViewController很简单:

if let randomView = Bundle.main.loadNibNamed("RandomView", owner: self, options: nil)?.first as? RandomView {

        self.view.addSubview(randomView)

    }

然后,这个randomView通常还会显示放置在其.xib文件内部的所有标签,文本字段等。但是,如果将UITableView放在其.xib文件中,则根本不会显示它。

要增加混乱:如果我创建一个单独的xib文件并放置其中的UITableView,则可以使用Bundle.main.loadNibNamed加载它并正确显示它。

这与设置我认为的委托或数据源无关。空表本身放置在randomView的.xib文件中时,不会显示。尽管标签,文本输入等其他元素也可以。

单独的.xib文件中的UITableView将被加载并正确显示,而未设置任何委托或数据源。

第一个示例未显示表格,第二个示例显示了表格。 description description2

1 个答案:

答案 0 :(得分:1)

此问题是由于缺少约束(请参见第一张图片中的红色箭头)导致的,从而导致无法正确显示表格视图。