Animate自动UILabel文本大小更改
我已经设置了我的UILabel自动缩放文本以适应标签框架。在运行期间,我正在改变这个框架的大小来为下面的东西腾出空间,但我真的希望大小改变是动画的,因为文本从一个大小跳到一个小的文本,看起来不太好。Animate自动UILabel文本大小更改
有什么办法可以做到这一点?
要使用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
})
}
这不是我正在寻找。我已经对高度变化进行了动画处理l - 我正在寻找的是动态调整标签大小调整后发生的自动字体大小变化,以适当地适应文本。 –
由于您正在降低UILabels高度,您是否可以使用变换? 'let labelScale = updatedLabelFrame.height/originalLabelFrame.height''self.label.transform = CGAffineTransformScale(self.label.transform,labelScale,labelScale)'这会给你[下面的动画](http://i.stack。在UIView.animateWithDuration里面 –
提到的手动更改他的标签的字体大小,而我的字体大小的变化自动根据标签的大小问题的家伙,使用最小的字体比例。 –
没有区别。只需要使用一个参数。 – Coder1000
什么?没有代码改变字体大小 –