带有更多导航控制器的错误消息



我已经决定在moreNavigationController中自定义tableView,我对其进行了测试并且工作得很好,没有问题,但是为什么我会收到错误:

2020-05-31 17:16:23.395903-0600 代码注释[1472:329155] [表视图] 仅警告一次:UITableView 被告知在不位于视图层次结构中的情况下布局其可见单元格和其他内容(表视图或其超级视图之一尚未添加到窗口中(。这可能会强制表视图中的视图在没有准确信息(例如表视图边界、特征集合、布局边距、安全区域插图等(的情况下加载和执行布局,从而导致错误,并且由于额外的布局传递,还会导致不必要的性能开销。在 UITableViewAlertForLayoutOutsideViewHierarchy 上创建一个符号断点,以便在调试器中捕获此问题并查看导致这种情况发生的原因,以便尽可能完全避免此操作,或者推迟到将表视图添加到窗口中。表视图: <_UIMoreListTableView: 0x13a866e00;帧 = (0 44; 414 852(;剪辑到边界 = 是;自动调整大小 = 宽+高;手势识别器 = ;层 = ;内容偏移量: {0, 0};内容大小: {414, 176};调整内容插图: {0, 0, 0, 0};数据来源:>

我不确定我该如何解决它,我该如何解决它? 这是我的代码:

if let moretableview = moreNavigationController.topViewController?.view as? UITableView {
moretableview.backgroundColor = UIColor(named: "mainbackground")
for cell in moretableview.visibleCells {
cell.backgroundColor = UIColor.clear
}
}

时间就是一切。通过说

moreNavigationController.topViewController?.view

在您说这句话时,您正在强制表视图控制器过早地获取其视图。然后,当视图(即表视图(尚未进入界面时,您将对其进行修改。这会导致运行时抱怨。

相关内容

最新更新