我已将UILabel设置为自动缩放文本以适合标签框架。在运行时,我正在改变这个框架的大小,以便为下面的东西腾出空间,但我真的希望大小更改是动画的,因为文本从一个尺寸跳到一个较小的尺寸,这看起来不太好。
有没有办法实现这个目标?
答案 0 :(得分:0)
使用UIView.animateWithDuration
设置高度变化的动画。下面是一个动画UILabel
高度变化的示例,持续时间为2秒:
@IBOutlet weak var label: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
let updatedHeight: CGFloat = 100.0
let updatedFrame = CGRect(origin:label.frame.origin,
size: CGSize(width:label.frame.width, height: updatedHeight))
UIView.animateWithDuration(2.0, animations: {
self.label.frame = updatedFrame
})
}