我是编程新手,负责更新另一家公司开发的iOS应用。该公司使用动画从启动图像过渡到主屏幕,并将代码更新为Swift 4并修复了代码中的所有错误后,该应用程序将不会过渡到主视图。在注释掉代码之后,我认为可能会影响它,并创建一个新的Xcode项目来测试xib文件是否存在问题,我不知所措。在模拟器中运行应用程序时,它在AppDelegate文件中抛出此错误。
线程1:信号SIGABRT
这就是运行时在控制台中显示的内容。
-[UITableView _configureCellForDisplay:forIndexPath:],/ BuildRoot / Library / Caches / com.apple.xbs / Sources / UIKit_Sim / UIKit-3698.54.4 / UITableView.m:9453中的断言失败 2018-08-30 14:12:04.456072-0600好奇心内阁[5400:502120] 由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'UITableView (; layer =; contentOffset:{0, -20}; contentSize:{768,1286}; AdjustedContentInset:{20,0,0,0}>)无法从其dataSource获取单元格 ()'
我一直在寻找一个星期以试图解决这个问题。而且尽管我在AppDelegate文件中收到错误,但我认为问题可能出在mainViewController文件中。
答案 0 :(得分:0)
实际上,您提供的日志的最后一行提到:
failed to obtain a cell from its dataSource (<Cabinet_of_Curiosities.CollectionViewController: 0x7f9c4540c5e0>)'
对我来说,这更像是一个UITableViewDataSource问题:tableView:cellForRowAtIndexPath:
中的Cabinet_of_Curiosities .CollectionViewController
可能出于某种原因返回了nil单元格。
您可以通过在return
行上的该方法中设置断点来确认这一点。
有关更多详细信息,可以通过TwoStraws
查看此答案。