我加载ViewController时收到此错误。
我不知道我能做什么
ios - xcode-线程1:EXC_BAD_ACCESS-LMLPHP

loadDataFromDb函数是这个

func loadDataFromDb() {
    let fetchRequest = NSFetchRequest(entityName: "Chats")
    daten = self.context!.executeFetchRequest(fetchRequest, error: nil) as! [Model]
    tableView.reloadData()
}


我用那个错误搜索了一下,但没有任何帮助

最佳答案

dequeueReusableCellWithIdentifier返回一个可选值,可能为nil。

通过使用UITableViewCell强制转换为as!可以使nil强制转换为UITableViewCell,并且最终在n​​il上调用方法,从而导致异常。

尝试使用if let解开单元格,然后再使用它,或者最好使用dequeueReusableCellWithIdentifier(_ identifier: String, forIndexPath indexPath: NSIndexPath) -> AnyObject(不会返回可选值)。

同样,除非绝对必要,否则请尝试远离!并避免使用它。

编辑:

这是一种方法

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    if let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as? UITableViewCell {

        cell.textLabel?.text = "Text"

        return cell
    }

    return UITableViewCell()
}

关于ios - xcode-线程1:EXC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31859561/

10-15 14:08