我在一个块内更新 a UIView
,但持续时间比我编码的要长得多。这是代码:layoutIfNeeded
animateWithDuration
func showInfoView() {
self.hintConstraint.constant = self.view.frame.height - (self.infoView.frame.height + 260)
self.view.layoutIfNeeded()
infoView.hidden = false
UIView.animateWithDuration(0.2, animations: {
self.view.layoutIfNeeded()
})
}
动画耗时超过 0.2 秒。即使我将持续时间设置为 0,这应该使代码布局视图而不动画,动画仍然会发生。当它在块内时是否layoutIfNeeded
自动具有持续时间animateWithDuration
?还是我错过了什么?