Rumah > Soal Jawab > teks badan
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)
巴扎黑2017-04-17 17:38:59
Objek
restaurant
tidak dimulakan dan ia tidak mempunyai nilai apabila tableView:cellForRowAtIndexPath
menggunakan objek restaurant
kemudiannya A null
` akan melaporkan ralat apabila dibuka.
天蓬老师2017-04-17 17:38:59
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?
天蓬老师2017-04-17 17:38:59
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