简单的动画适用于iOS 8,但不适用于iOS 7



我在下面有一个简单的动画代码。它应该将 UILabel 从其当前位置下方的 250 点移动到其当前位置。它在iOS 8.1的模拟器中工作正常,但是当我尝试在模拟器中的iOS 7.1上测试它时,动画不是从-250开始,而是从当前位置开始并向上移动。知道为什么吗?

UIView.animateWithDuration(0.4, delay: 0, options: .CurveEaseOut, animations:{
    var animateLabel = self.signLabel.frame
    animateLabel.origin.y -= 250
    self.signLabel.frame = animateLabel
    }, completion: {finsihed in
    self.doAfterAnimation()
    })

看看这个,

//To go from Y = -250 to Y = 250
var animateLabel = UILabel(frame: CGRectMake(0, -250, 100, 100))
animateLabel.text = "MyLabel"
    self.view.addSubview(animateLabel)
    UIView.animateWithDuration(5.0, animations: {
        animateLabel.frame.origin.y = 250
    })

 //To go from Y = 250 to Y = -250
var animateLabel = UILabel(frame: CGRectMake(0, 250, 100, 100))
animateLabel.text = "MyLabel"
    self.view.addSubview(animateLabel)
    UIView.animateWithDuration(5.0, animations: {
        animateLabel.frame.origin.y = -250
    })

最新更新