У меня всегда есть таблица с одной ячейкой. Если есть данные для загрузки из Firebase, они будут помещены в массив, который называется posts. Когда есть, например, два «в моем случае» сервера, которые пользователь будет загружать, он будет отображать только одну ячейку вместо двух. Я думал, что смогу это исправить, изменив return posts.count
на return posts.count + 1
из-за одной ячейки, которая будет отображаться всегда. Но если я использую return posts.count + 1
, я получу
Тема 1: Неустранимая ошибка: индекс выходит за пределы диапазона
ошибка в строке let post = posts[indexPath.row]
. Я читал об этой ошибке, но не могу ее исправить.
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if posts.count == 0 {
self.tableView.setEmptyMessage("No Servers uploaded!")
return 1
} else {
self.tableView.restore()
return posts.count
}
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
if indexPath.row == 0 {
let cell = tableView.dequeueReusableCell(withIdentifier: "ProfileCell", for: indexPath) as! ProfileCellTableViewCell
cell.delegate = self
return cell
}else {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! TableViewCellMYposts
cell.Map_image.image = nil
let post = posts[indexPath.row]
cell.post = post
cell.delegate = self
return cell
}
}