我在名为"的视频"
的UIButton上执行以下动画UIView.animateWithDuration(duration, animations: {
self.view.transform = CGAffineTransformMakeScale(0.5, 0.5)
})
当动画运行时,它立即将UIButton的大小加倍,然后将其缩小回原始大小。所以动画确实有效。
但我想要的是动画以UIButton的原始大小开始,然后将其缩小到那个大小的一半。
基本上,我希望UIButton的原始大小出现在动画的开头,而不是结尾。我怎么能这样做?
(我尝试更改view.frame.size.height和width属性,但似乎没有改变UIButton或动画的外观。)
答案 0 :(得分:1)
您的动画可能会有冲突。
UIView.animateWithDuration(
duration,
delay: 0,
options: .BeginFromCurrentState,
animations: { () -> Void in
self.view.transform = CGAffineTransformMakeScale(0.5, 0.5)
}) { (completed:Bool) -> Void in
self.view.transform = CGAffineTransformMakeScale(0.5, 0.5)
// or, to reset:
// self.view.transform = CGAffineTransformIdentity
}
从.BeginFromCurrentState
开始此动画可能会完全减少或消除毛刺,并在完成后采取行动(您可以基于completed:Bool
的逻辑)也会告诉Core Animation在动画中断时该怎么做