ios - 动画自动 UILabel 文本大小更改

标签 ios iphone xcode swift

我已将 UILabel 设置为自动缩放文本以适合标签框架。在运行时,我正在更改此框架的大小,以便为下面的内容腾出空间,但我确实希望大小更改具有动画效果,因为文本从一种尺寸跳到较小的尺寸,这看起来不太好。

有什么办法可以实现这一点吗?

最佳答案

要为高度变化设置动画,请使用UIView.animateWithDuration。下面是一个以 2 秒的持续时间对 UILabel 的高度变化进行动画处理的示例:

@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
  })
}

关于ios - 动画自动 UILabel 文本大小更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37195740/

相关文章:

ios - Storyboard和 View Controller

ios - 可以把当前没有显示的uiview转成uiimage吗

iphone - 如何在 IOS6 中旋转单个 View Controller

Swift//多个列表单元格中的相同图像已更改(每第 4 个单元格)

ios - 使用默认数据集创建 CoreData 模型

ios - 如何从Objective-C中的UUID获取特性?

android - 使用 Ruby on Rails 进行应用程序开发

ios - 禁用位码后 iOS 9 及更高版本的链接器错误

xcode - 如何在 XCode4 中设置 NSZombiesEnabled?

iphone - 在ios中覆盖表View Cell中的内容