【发布时间】:2017-01-08 06:28:31
【问题描述】:
我有一个UILabel 定义如下:
let disclaimerLabel : TTTAttributedLabel = {
let label = TTTAttributedLabel(frame: CGRectZero)
label.textColor = UIColor.whiteColor()
label.font = UIFont.boldSystemFontOfSize(13)
label.textAlignment = .Center
label.numberOfLines = 1
label.minimumScaleFactor = 0.01
label.adjustsFontSizeToFitWidth = true
label.text = "By logging in, you agree to our Privacy Policy and T&C."
return label
}()
现在的问题是,在 iphone 4 等较旧的手机上,一行文本不适合一行。我认为这可以通过label.adjustsFontSizeToFitWidth = true 行解决,但是标签文本没有适当地缩小文本大小,而是如下所示:By logging in, you agree to our Privacy Policy... 我不能让这个标签有超过一行,因此我不能使用numberofLines = 2或label.lineBreakMode = NSLineBreakMode.ByTruncatingTail
在这种情况下,整个文本在一行中可见是绝对必要的。我怎样才能做到这一点?
【问题讨论】:
-
如果你把你的标签子类的代码贴出来会很有帮助
-
它在 github 上广泛可用,但它不会覆盖任何这些属性,因此行为应该与
UILabel的行为相同 -
我将其前导设置为等于 self.view 和常量
self.view.frame.width *0.1和尾随相同,所以基本上是屏幕宽度的 80% -
现在不在家,等我回来再发帖
标签: ios swift uilabel width font-size