swift animateWithDuration在iOS 7中不起作用

我有一个在iOS 8.1中运行正常的animation,但在iOS 7.1中,button只出现在没有animation的地方。

该button的前导,尾部和底部约束为0,高度约束为80.约束条件在故事板中设置。

在viewWillAppear方法中,我将底部约束更改为-80,以便在开始时不会看到。

当用户按下一个button,button应该动起来,我运行这个方法:

func animateCtaUp() { self.ctaView.layoutIfNeeded() UIView.animateWithDuration(0.5, delay: 0, options: .CurveEaseOut, animations: { self.ctaViewBottomConstraint.constant = 0 self.ctaView.layoutIfNeeded() }, completion: { finished in }) } 

基本上有2个错误。

第一个是:我有一个没有布局限制的视图。 当我添加他们的一个animation开始运行。

第二个错误是:我在打电话

 self.ctaView.layoutIfNeeded() 

相反,我应该打电话

 self.view.layoutIfNeeded