Имеют 2 клетки-прототипа. Каждый должен быть разного размера. Так что у меня есть ячейка и ячейка1. Ячейка должна быть 40, а ячейка должна быть 75.
Я пытался использовать heightForRowAt - обнаружил, что это вызывается перед cellForRowAt
Мне надоело устанавливать высоту в раскадровке для каждой ячейки
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "starshipCell", for: indexPath)
let cell1 = tableView.dequeueReusableCell(withIdentifier: "starshipCell1", for: indexPath) as! SectionTableViewCell
switch indexPath {
case [4,0]:
cell1.sectionLbl.text = "Armor".lowercased()
cell1.detailTextLabel?.text = "Test"
return cell1
case [4,1]:
cell.textLabel?.text = "Defensive Countermeasures"
return cell
case [4,2]:
cell.textLabel?.text = "Shields"
return cell
case [11, 0]:
cell.textLabel?.text = "Forward Arc"
return cell
case [11, 1]:
cell.textLabel?.text = "Port Arc"
return cell
case [11, 2]:
cell.textLabel?.text = "Starboard Arc"
return cell
case [11, 3]:
cell.textLabel?.text = "Aft Arc"
return cell
case [11, 4]:
cell.textLabel?.text = "Turret"
return cell
default:
return cell
}
// return cell
}
'Попытка удалить из очереди несколько ячеек для одного и того же индексного пути, что недопустимо. Если вам действительно нужно удалить из очереди больше ячеек, чем запрашивает табличное представление, используйте -dequeueReusableCellWithIdentifier: метод (без пути индекса). Идентификатор ячейки: starshipCell1, путь индекса: {длина = 2, путь = 0 - 0} '
Так что вышеприведенное работает отлично. Мне просто нужно настроить высоту строки для этих ячеек. Теперь код не завершен на 100%. Все вышеперечисленные случаи будут изменены и обновлены до cell1. Ошибка только когда я использую heightForRowAt