EXC_BREAKPOINT UNKNOWN 行“0”崩溃
Posted
技术标签:
【中文标题】EXC_BREAKPOINT UNKNOWN 行“0”崩溃【英文标题】:EXC_BREAKPOINT UNKNOWN crash on line "0" 【发布时间】:2015-07-16 12:47:40 【问题描述】:我在 Crashlytics 报告中遇到了这个奇怪的崩溃,我不确定发生了什么。我什至不知道行号“0”是什么意思。有任何想法吗?
来自 didSelect 方法的代码:
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath)
switch indexPath.section
case 1:
let vc = WTShowDetailVC()
vc.show = bottomFeaturedShows[indexPath.row].show
navigationController?.pushViewController(vc, animated: true)
case 2:
let vc = WTShowDetailVC()
vc.show = lastWatchedShows[indexPath.row]
navigationController?.pushViewController(vc, animated: true)
case 3:
let vc = WTTapperProfileUserVC()
vc.tapper = popularTappers[indexPath.row]
navigationController?.pushViewController(vc, animated: true)
default:
println("Something went wrong")
【问题讨论】:
试试 navigationController!.pushViewController 而不是 navigationController?.pushViewController 反正不是第 0 行。 就像@user3344236 说的,它不是关于第0行,还要确保你没有访问索引之外的数组对象。 嗯,我相信我的版本是正确的。 “导航控制器?”比“navigationController!”更安全。我认为这个问题与 navigationController 无关。 @Schemetrical 当然。如果问题在那里,我会遇到“越界”问题。我得到的是“EXC_BREAKPOINT UNKNOWN” 好的,检查bottomFeaturedShows[indexPath.row] 或lastWatchedShows[indexPath.row] 或popularTappers[indexPath.row] 是否为nil [null]。我认为您的问题在于 bottomFeaturedShows[indexPath.row].show 【参考方案1】:这通常发生在您解开一个可选项并且它的值为nil
时。尝试将nil
支票置于navigationController
。
if let navigationcontroller: UINavigationController = navigationController
navigationcontroller.pushViewController(vc, animated: true)
【讨论】:
感谢您的回复,但不可能是这个问题。调用 navigationController?.pushViewController 是正确的,如果 navigationController 为 nil,不会导致崩溃。 我也遇到过类似的情况。就我而言,该场景是可重现的。崩溃与 crashlytics 报告中给出的不同。我建议您检查您正在使用的函数中是否有任何选项,即 bottomFeaturedShows、lastWatchedShows 等。 这不一定与可选本身有关。在我的情况下,崩溃是由于在 Objective-C 中使用对象设置了一个快速的非可选对象,即nil
以上是关于EXC_BREAKPOINT UNKNOWN 行“0”崩溃的主要内容,如果未能解决你的问题,请参考以下文章
Crashlytics 中的 EXC_BREAKPOINT 0x00000000e7ffdefe
线程 1: EXC_BREAKPOINT(code = EXC_I386_BPT, subcode=0x0
使用 self.window?.makeKeyAndView() 时的 EXC_BREAKPOINT
错误 - EXC_BREAKPOINT(代码=1,子代码=0x100308448)