在我的 TableView 的单元格中,我有包含 View 的堆栈 View 。我有堆栈 View 的尾随约束。我根据要在堆栈 View 中显示的 View 数量来计算此尾随约束的值。
有什么方法可以在设备旋转后重新计算此尾随约束值并显示 View ,而无需在 viewWillTransition
中重新加载 TableView ?
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
super.viewWillTransition(to: size, with: coordinator)
self.tableView.reloadData()
// self.view.layoutIfNeeded() // This doesn't recalculate constraints
}
最佳答案
你应该实现这个方法
func viewWillTransition(调整大小:CGSize,协调器:UIViewControllerTransitionCoordinator)
当设备转换到新 View (横向或纵向)时调用。在这里你可以改变你的约束并调用
view.setNeedsLayout()
标记该布局需要在下一个 Runloop 中重新计算。
关于ios - 如何在设备旋转后重新计算约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55463670/