我的项目出了点问题。调试应用程序和应用程序崩溃时,它不会打印断言消息。通常它应该显示如下:
2017-02-05 20:13:54.687 MyPlayground[29372:221950] *** Assertion failure in -[UITableView _endCellAnimationsWithContext:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3600.6.21/UITableView.m:1610
2017-02-05 20:13:54.690 MyPlayground[29372:221950] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid update: invalid number of rows in section 0. The number of rows contained in an existing section after the update (10) must be equal to the number of rows contained in that section before the update (10), plus or minus the number of rows inserted or deleted from that section (1 inserted, 0 deleted) and plus or minus the number of rows moved into or out of that section (0 moved in, 0 moved out).'
但我得到的只是第一条消息。我只知道断言失败了,我没有解释原因。由于不知道崩溃的原因是什么,这使调试变得更加困难。
2017-02-05 20:07:00.958 myProject[28876:215448] *** Assertion failure in -[UITableView _endCellAnimationsWithContext:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3600.6.21/UITableView.m:1315
我环顾四周,有人建议这可能是因为优化已经开启,但事实并非如此。我的项目和目标都有优化调试设置为无,我确信我正在使用调试配置运行我的项目。我尽我所能,到目前为止没有任何帮助,我的想法已经不多了。
我正在使用Xcode 8,项目混合了Swift 3.0 + Objective-C。我曾经有过cocoapods,但我转而使用Carthage(我希望这可能有所帮助,但事实并非如此)。