当应用程序在模拟器中运行时,UITableViewCell的内容消失

时间:2018-01-07 16:31:27

标签: ios xcode uitableview xcode9.2

UITableViewCell显示在Main.storyboard中,但不会显示在模拟器中。

我正在使用Main.storyboard。在我使用Swift的简单实验中,我添加了一个TableView,然后在其中放入UITableViewCell,然后在单元格的内容下放置一个图像和一个标签。它在Main.storyboard中看起来没问题但是当我运行项目时,内容消失了。我所做的只是纯粹在Main.storyboard上,而不是触及.swift文件。

以下是我简单工作的截图链接:

我已经通过stackoverflow搜索了问题,发现了一个相关的问题here: 'UIImageView doesn't show up in simulator',然后我按照论坛推荐的解决方案,但仍未解决错误。

到目前为止我已经做了什么来解决这个问题:

  1. 检查视图中的每个项目是否有四个约束定义X,Y位置,宽度和高度。
  2. 尝试检查并取消选中Main.storyboard的自动布局标志
  3. 确保我的tableview单元格内容(以及我视图中的所有内容)的alpha设置为1
  4. 好吧,我还没有检查我的.xib文件中的内容。 我想知道这是一个错误,还是我的设置中的问题?

    我对Xcode,swift和iOS应用程序都很陌生。任何帮助或建议将不胜感激。如果您遇到同样的问题,我也想了解您的情况。

2 个答案:

答案 0 :(得分:1)

您的单元格未显示在模拟器中的唯一原因是因为您的tableview是动态的。

动态表视图具有在运行时加载的数据,其中没有固定数量的单元格,并且每个单元格具有相同的布局。 The Apple tutorial是一个很好的起点。它将指导您如何使用tableview / tableviewcontroller。

没有办法解决它:如果你想使用动态表视图,你必须在.swift文件中编码。

另一方面,如果要使用静态表视图,则固定单元格数,并且不会在运行时加载数据。如果您不想要与代码有任何关系,可以使用静态表视图。

答案 1 :(得分:-1)

我有类似的问题。我通过删除受影响视图的约束并从头开始解决了它。