Мне нужно развернуть или свернуть ячейку табличного представления и ее содержимое.
Для этого я использую NSLayoutConstraints. Несмотря на то, что работа выполнена, я сталкиваюсь с некоторыми неприятными проблемами компоновки с другими представлениями в ячейке.
Вот видео.
А вот мой код:
ViewController:
extension ViewController: TableViewCellDelegate {
func tableView(shouldExpand cell: TableViewCell) {
tableView.performBatchUpdates({
cell.expand()
})
}
func tableView(shouldCollapse cell: TableViewCell) {
tableView.performBatchUpdates({
cell.collapse()
})
}
}
TableViewCell:
func expand() {
UIView.animate(withDuration: 0.57) {
self.viewHeight.constant = 320
self.view.alpha = 1
self.layoutIfNeeded()
}
}
func collapse() {
UIView.animate(withDuration: 0.57) {
self.viewHeight.constant = 0
self.view.alpha = 0
self.layoutIfNeeded()
}
}
Как остановить изменение размера верхнего вида?