ios - 调整视图的大小使其他视图在 UITableViewCell 中反弹
问题描述
我需要展开或折叠表格视图单元格及其内容。
为此,我正在使用 NSLayoutConstraints。尽管它完成了工作,但我在单元格中的其他视图中遇到了一些令人讨厌的布局问题。
这是一个视频。
这是我的代码:
视图控制器:
extension ViewController: TableViewCellDelegate {
func tableView(shouldExpand cell: TableViewCell) {
tableView.performBatchUpdates({
cell.expand()
})
}
func tableView(shouldCollapse cell: TableViewCell) {
tableView.performBatchUpdates({
cell.collapse()
})
}
}
表视图单元:
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()
}
}
如何停止上视图停止调整大小?
解决方案
您可以使用 UIStackView 并仅显示和隐藏视图以进行折叠和展开。UIStackView 将很容易处理并且会为你工作。
推荐阅读
- python - 使用 BeautifulSoup 获取日期作为日期,而不是作为数字
- eclipse - 如何在Scala中比较2列并连接
- python-3.x - 如何通过按 Enter 和 Tab 键移动单元格来使 python tkinter 中的一组条目像 Excel 表一样工作
- ruby-on-rails - Cognito admin_set_user_password 总是引发 UserNotFoundException
- javascript - 将信息从自动完成添加到新行
- c - 使用 uint8_t 数据的 int 类型矩阵在传递给函数时打印错误
- python - 我想从与给定模式匹配的文件中获取行
- java - 如何在 Java 的 SWT 文本字段中为 JSON 或 XML 语法着色
- ios - 未能建立活动方案
- angular - Angular 在部署后停止工作,mat select 和发送数据出现问题