這是我初始化我的字符串數組:爲什麼我不能打印我的indexPath.row swift 3?
let databaseRef = FIRDatabase.database().reference().child("Butikker")
self.shopItems = [String]()
databaseRef.observe(FIRDataEventType.value, with: { (snapshot) in
for child in snapshot.children {
let snap = child as! FIRDataSnapshot
let dictionary = snap.value as! [String: AnyObject]
self.shopItems.append(dictionary["Name"] as! String)
}
})
這是我的tableview:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
var cell = tableView.dequeueReusableCell(withIdentifier: cellReuseIdentifier, for: indexPath) as UITableViewCell
let when = DispatchTime.now() + 5
DispatchQueue.main.asyncAfter(deadline: when) {
print(self.shopItems[indexPath.row])
cell.textLabel?.text = self.shopItems[0]
}
return cell
}
我的問題是,爲什麼我的應用程序崩潰,當我嘗試打印shopItem[index.row]
以及如何我會解決這個問題嗎?
您是否嘗試過自己打印'shopItems'並查看它是否包含您正在查找的元素?總是第一步是打印陣列,然後在問題中分享。 – adev
String數組shopItems包含兩個字符串值。我能夠加載到我的tableview,如果我cell.textLabel?.text = self.shopItems([0]或[1]] – user8414724
那麼在它崩潰之前'indexPath.row'的值是多少?爲什麼它會崩潰 – adev