我有一段代码,它动画的UIImage的位置,但过渡不是动画 - 而是立即改变立场。我不相信这是一个代码问题,因为相同的代码在另一个项目上工作,但我无法弄清楚还有什么问题。UIView动画没有动画
class CenterViewController : UIViewController {
@IBOutlet var logoView: UIImageView!
@IBOutlet var logoViewVerticalConstraint: NSLayoutConstraint!
override func viewDidAppear(animated: Bool) {
animateLogo()
}
func animateLogo() {
self.logoViewVerticalConstraint.constant = 35 - (self.view.frame.size.height/2);
logoView.setNeedsUpdateConstraints()
UIView.animateWithDuration(2.5, animations: {
self.logoView.alpha=1
self.logoView.layoutIfNeeded()
})
}
}
alpha动画但y位置没有。我的约束是这样
编辑:我使用的Xcode-β7目标8.4
你应该在cha之前调用'layoutIfNeeded'一次在约束被改变之后约束约束并且一次在动画块中。您的代码在大多数情况下都能正常工作,但有些情况下您需要使用其他方法,而您的代码可能就是其中之一。 – marosoaie
这没有任何影响,我不知道为什么它 – clicky