我的 ViewController 中有 View sView。它的高度有约束 - 我为此约束创建了 IBOutlet - sViewHeightConstraint。我想用动画降低 sView 的高度。
我创建了函数
UIView.animateWithDuration(5.5, animations: {
self.sViewHeightConstraint.constant = 50
})
View 的高度正在改变,但我没有看到任何动画。我做错了什么?
最佳答案
使用 layoutIfNeeded()
view.layoutIfNeeded() // force any pending operations to finish
UIView.animateWithDuration(0.2, animations: { () -> Void in
self.sViewHeightConstraint.constant = 50
self.view.layoutIfNeeded()
})
swift 3
view.layoutIfNeeded()
sViewHeightConstraint.constant = 50
UIView.animate(withDuration: 1.0, animations: {
self.view.layoutIfNeeded()
})
关于ios - 使用 Swift 动画 View 高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36953508/