UIView动画不动画

时间:2015-08-23 21:43:15

标签: ios swift animation uiview nslayoutconstraint

我有一段代码片段可以激活UIImage的位置但是过渡不是动画的 - 而是位置立即改变。我不相信这是一个代码问题,因为相同的代码适用于另一个项目,但我无法弄清楚还有什么问题。

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位置没有动画。我的约束看起来像这样

enter image description here

具体来说,代码中操纵的是: enter image description here

修改:我正在使用针对8.4的Xcode-Beta 7

1 个答案:

答案 0 :(得分:0)

尝试

func animateLogo() {
    logoView.layoutIfNeeded()
    UIView.animateWithDuration(2.5, animations: {
        self.logoViewVerticalConstraint.constant = 35 - (self.view.frame.size.height / 2);
        self.logoView.alpha=1
        self.logoView.layoutIfNeeded()
    })
}