【发布时间】:2016-01-20 15:23:30
【问题描述】:
我收到以下错误。
致命错误:在展开可选值时意外发现 nil
应用程序因以下代码而崩溃。由于这是我的第一个场景,应用程序在加载的那一刻就崩溃了。
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
tableView.delegate = self
tableView.dataSource = self
mySingleton = Singleton.sharedInstance
}
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
tableView.reloadData()
}
它在 tableView.delegate = self 上崩溃。如果我注释掉该行和 tableView.delegate = self 它然后在 tableView.reloadData() 行上崩溃。如果我评论该行,应用程序不再崩溃,但动态 tableView 将不再显示数据,因为它不再重新加载。
在我将第三个选项卡添加到选项卡栏视图控制器之前,该应用程序运行良好。我可能在此过程中不小心做了其他事情。我很想听听你对此事的看法。我已经盯着它看了好几个小时了。
谢谢, 亚历克斯
【问题讨论】:
-
确保在使用前已将 table view 连接到 IBOutlet 或初始化 tableView。
-
它连接到一个 IBOutlet。它实际上在几个小时前工作得很好。在打开应用程序之前,我无法完全初始化 tableView,因为它是为了稍后才显示任何数据。
-
尝试重新连接UITableView的IBOutlet。
-
请显示更多 Singleton.sharedInstance 的代码和表的委托方法?
-
由于某种原因,执行干净的构建已经解决了问题。我不知道为什么。
标签: ios swift uitableview reloaddata