доброе утро У меня есть ошибка в моем проекте, из-за которой я не могу понять, что я делаю неправильно.каждый раз, когда я удаляю строку в indexpath, чтобы удалить дочернего элемента в firebase, я также получаю ошибку вне диапазона и сбой приложения.
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
DataServices.instance.BOAT.observe(.value) { (dataUpdate) in
DataServices.instance.getBoatFueled { (returnedBoats) in
self.firstTbaleViewBoatArray = returnedBoats
self.tableView1.reloadData()
if self.firstTbaleViewBoatArray.count >= 1 {
self.tableView1.isHidden = false
self.tableView1.reloadData()
} else {
self.tableView1.isHidden = true
self.tableView1.reloadData()
}
}
}
}
, где я наблюдаю значение в firebase, чтобы увидеть, если что-нибудьбыл или добавлен или удален.так что просмотр таблицы может обновляться в режиме реального времени на всех устройствах
func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath) {
let keys = firstTbaleViewBoatArray[indexPath.row].key
DB_BASE.child("boat").child(keys).removeValue { (error, ref) in
if error != nil {
print("could not delete")
return
} else {
self.firstTbaleViewBoatArray.remove(at: indexPath.row) //out of range error happened here
self.tableView1.deleteRows(at: [indexPath], with: .fade)
self.tableView1.reloadData()
}
}
}
, и именно здесь я получаю сбой вне диапазона