ios - unexpectedly found nil while unwrapping an Optional value?
PHPz
PHPz 2017-04-17 17:36:59
0
3
597

import UIKit

class DetailTableViewController: UITableViewController {

var restaurant: Restaurant!

@IBOutlet weak var imageView: UIImageView!

override func viewDidLoad() {
    super.viewDidLoad()
    imageView.image = UIImage(named: restaurant.image)

}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
}

// MARK: - Table view data source

override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    return 1
}

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 4
}

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    
    let cell = tableView.dequeueReusableCellWithIdentifier("DetailCell", forIndexPath: indexPath) as! DetailTableViewCell
    
    switch indexPath.row{
    case 0:
        cell.fieldLabel.text = "Restaurant Name"
        cell.valueLabel.text = restaurant.name
    case 1:
        cell.fieldLabel.text = "Restaurant Type"
        cell.valueLabel.text = restaurant.type
    case 2:
        cell.fieldLabel.text = "Restaurant Location"
        cell.fieldLabel.text = restaurant.location
    case 3:
        cell.fieldLabel.text = "Visted?"
        cell.fieldLabel.text = restaurant.isVisted ? "Yes":"No"
    default:
        cell.fieldLabel.text = ""
        cell.valueLabel.text = "" 
    }
    return cell
}

}

错误信息: fatal error: unexpectedly found nil while unwrapping an Optional value
(lldb)

PHPz
PHPz

学习是最好的投资!

membalas semua(3)
巴扎黑

Objek

restaurant tidak dimulakan dan ia tidak mempunyai nilai apabila tableView:cellForRowAtIndexPath menggunakan objek restaurant kemudiannya A null` akan melaporkan ralat apabila dibuka.

Peter_Zhu

Saya tidak pernah mempelajari Swift, tetapi berdasarkan pengalaman dan mesej ralat oc, saya membuat tekaan berani bahawa anda hanya menulis untuk mendapatkan sel daripada kumpulan penggunaan semula jika tiada sel dalam kumpulan penggunaan semula dan anda tidak melakukannya buat tak tahu, betul ke?

Peter_Zhu

Terjemahan ralat: Apabila nilai pilihan dibongkar, ia didapati sebagai nilai nol, yang bersamaan dengan masalah penuding nol sedikit sebanyak
Anda boleh mencari nilai mana yang belum dimulakan

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan