CellForRowAtIndexPath在花括号上崩溃
问题描述:
我在我的项目中使用了一个表格视图,crashlytics报告显示在我的cellForRowAtIndexPath函数中的大括号正好无法帮助我找到该错误。我无法在我的设备或模拟器上重现此错误。堆栈跟踪位于下方,cellForRowAtIndexPath代码作为图像附加。CellForRowAtIndexPath在花括号上崩溃
Crashlytics栈跟踪
Crashed: com.apple.main-thread
0 Synkers 0x104407d20 specialized HomeScreenViewController.tableView(UITableView, cellForRowAt : IndexPath) -> UITableViewCell (HomeScreenViewController.swift:208)
1 Synkers 0x104404134 @objc HomeScreenViewController.tableView(UITableView, cellForRowAt : IndexPath) -> UITableViewCell (HomeScreenViewController.swift)
2 UIKit 0x18a421474 -[UITableView _createPreparedCellForGlobalRow:withIndexPath:willDisplay:] + 668
3 UIKit 0x18a4219d8 -[UITableView _createPreparedCellForGlobalRow:willDisplay:] + 80
4 UIKit 0x18a401670 -[UITableView _updateVisibleCellsNow:isRecursive:] + 2140
5 UIKit 0x18a1bcf10 -[UITableView layoutSubviews] + 140
6 UIKit 0x18a0e9000 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 1256
7 QuartzCore 0x184cb90b4 -[CALayer layoutSublayers] + 184
8 QuartzCore 0x184cbd194 CA::Layer::layout_if_needed(CA::Transaction*) + 332
9 QuartzCore 0x184c2bf24 CA::Context::commit_transaction(CA::Transaction*) + 336
10 QuartzCore 0x184c52340 CA::Transaction::commit() + 540
11 UIKit 0x18a0de884 _afterCACommitHandler + 256
12 CoreFoundation 0x180c838b8 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32
13 CoreFoundation 0x180c81270 __CFRunLoopDoObservers + 412
14 CoreFoundation 0x180c8182c __CFRunLoopRun + 1292
15 CoreFoundation 0x180ba22d8 CFRunLoopRunSpecific + 436
16 GraphicsServices 0x182a33f84 GSEventRunModal + 100
17 UIKit 0x18a14f880 UIApplicationMain + 208
18 Synkers 0x104215ba4 main (main.m:14)
19 libdyld.dylib 0x1806c656c start + 4
答
这有什么待办事项与错误,但因为我的名声太低了,我得写一个的answere :
绝不强制取消单元格!
...forIndexPath: indexPath) as! ...
这可能会导致错误,甚至崩溃
+2
不是。如果程序员确信它具有适当的类型,强制转换单元格是可以接受的。如果它然后崩溃,这是一个必须考虑的错误。无论如何,只要你没有别的事情,你可以并且可能应该强制解包/施放。如果你作为程序员不能回答这个问题:“如果它没有类型会发生什么”,“如果我的应用程序中捆绑的图像无法找到,应该发生什么”的崩溃是正确的。这样你至少意识到有一个错误。 – luk2302
请添加你的代码而不是代码图像。并提及您的应用在哪一行崩溃。 –
我假设你的代码与设备上部署的代码不同步。 – luk2302
我添加了图片来显示代码行;该应用程序坠毁在208行。@dahiya_boy –