gpt4 book ai didi

swift - 使用 attributeText 时多行 UILabel 不会调整文本大小

转载 作者:行者123 更新时间:2023-11-30 13:57:43 26 4
gpt4 key购买 nike

我正在尝试制作一个非常自定义的 UILabel。当调用 viewDidAppear 时,将设置 UILabel 的 attributedText 属性。 此 UILabel 需要为 2 行。我在 Storyboard中将 minimumFontSize 设置为 7,numberOfLines 设置为 2。

这是我的代码:

let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.lineSpacing = 8.0
paragraphStyle.alignment = NSTextAlignment.Right

let name = idea?.valueForKey("name") as! String
let text = "You submitted your name " + name
let attrString = NSMutableAttributedString(string: text)
attrString.addAttribute(NSFontAttributeName, value: UIFont.systemFontOfSize(12.00), range: NSMakeRange(0,attrString.length))
attrString.addAttribute(NSParagraphStyleAttributeName, value: paragraphStyle, range: NSMakeRange(0, attrString.length))
attrString.addAttribute(NSForegroundColorAttributeName, value: UIColor(r: 84, g: 105, b: 121, a: 1.0), range: NSMakeRange(0, 3))
attrString.addAttribute(NSForegroundColorAttributeName, value: UIColor(r: 84, g: 105, b: 121, a: 1.0), range: NSMakeRange(attrString.length - name.characters.count, name.characters.count))

submittedComment.attributedText = attrString

问题:新设置的 UILabel 文本大小未调整以适合 UILabel。

我错过了什么吗?似乎每次新的重大 iOS 更新都会改变这种情况发生的方式。谢谢!

最佳答案

已解决:我发现有两个主要错误:

  1. 似乎在 NSMutableAttributedString 上设置 lineSpacing 会隐藏一些文本。根据我的测试,UILabel 的自动调整大小功能在调整大小时似乎没有考虑到这一点。

  2. 我的 UILabel 有设定的宽度和高度。这里的问题是设置高度,这在我的情况下是不必要的。一旦我删除它,我的 attributedText 就不再隐藏了。

希望这有帮助!

关于swift - 使用 attributeText 时多行 UILabel 不会调整文本大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33404397/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com