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

UITableViewCell's contents disappear when app run in simulator

UITableViewCell 出现在 Main.storyboard 但没有出现在模拟器中。

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

这里是我的简单作品的截图链接:

我通过Whosebug搜索问题,找到了一个相关问题here: 'UIImageView doesn't show up in simulator',然后按照论坛推荐的解决方案,仍然没有解决bug。

到目前为止我为解决错误所做的工作:

  1. 检查我视图中的每个项目是否都有定义 X、Y 位置、宽度和高度的四个约束。
  2. 尝试检查和取消检查我的 Main.storyboard
  3. 的自动布局标志
  4. 确保我的 tableview 单元格的内容(以及我视图中的所有内容)的 alpha 设置为 1

嗯,我还没有检查我的 .xib 文件中的内容。 我想知道这是一个错误,还是我的设置有问题?

我对 Xcode、swift 和 iOS 应用程序还很陌生。任何帮助或建议将不胜感激。如果你和我有同样的问题,我也想知道你的情况。

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

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

没有办法解决:如果您想使用动态 table 视图,则必须在 .swift 文件中编写代码。

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

我遇到了类似的问题。我通过删除受影响视图的约束并重新开始来解决它。