У меня есть три ячейки табличного представления, ячейка срока выполнения должна увеличиться до 200, если она выбрана, и до 44 (по умолчанию), если она не выбрана. По какой-то причине он не будет расширяться.
Я не могу сделать это в AutoLayout, так как он должен измениться, поэтому я попытался использовать оператор switch, и когда он находится на определенном пути индекса, он должен расширяться, однако он не работал.
override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
let normalCellHeight = CGFloat(44)
let largeCellHeight = CGFloat(200)
switch(indexPath) {
case [1,0]: // Due Date Cell
return isPickerHidden ? normalCellHeight : largeCellHeight
case [2,0]: // Notes Cell
return largeCellHeight
default: return normalCellHeight
}
}
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
switch(indexPath) {
case [2,0]:
isPickerHidden = !isPickerHidden
dueDateLabel.textColor = isPickerHidden ? .black : tableView.tintColor
tableView.beginUpdates()
tableView.endUpdates()
default: break
}
}
Ожидаемый результат:
Прикосновение к ячейке даты выполнения, расширение ячейки для отображения средства выбора даты
Фактические результаты:
Ячейка подсвечивается, но не расширяется.