假设我使用CGAffineTransformScale缩放UILabel:
let scale = 0.5
text = UILabel(frame: CGRectMake(100, 100, 100, 100))
text.text = "Test"
UIView.animateWithDuration(2.0, delay: 0.0, options: UIViewAnimationOptions.CurveEaseIn, animations: {
self.text.transform = CGAffineTransformScale(self.text.transform, scale, scale)
}, completion: {(value : Bool) in
print("Animation finished")
})
当我想将UILabel缩小一半时,这个方法很有效。但如果我再次调用这段代码,它会再次缩小一半,导致缩放比例变成0.25。
是否可以使用CGAffineTransformScale将其始终缩放为原始UILabel框架的一半大小,而不是累积缩放?
CGAffineTransformScale(CGAffineTransformIdentity, scale, scale)
可以将一个视图或图层按比例缩放。 - Ozgur Vatansever