多行 UILabel 没有正确换行 [重复]
Posted
技术标签:
【中文标题】多行 UILabel 没有正确换行 [重复]【英文标题】:Multiline UILabel not wrapping words correctly [duplicate] 【发布时间】:2017-03-02 17:15:54 【问题描述】:我在调整字体大小以适应标签而不拆分任何单词时遇到问题。 我有一个标签,它将根据字符串数组动态更改其内容。 标签可以有任意数量的行。我想要的是字体大小尽可能大,同时适合标签并且不拆分任何单词。 我在情节提要上使字体大小非常大。 使用自动布局将标签放置在视图上。
例如,如果我使用此代码,则对于字符串“最确定”:
answerLabel.numberOfLines = 0
answerLabel.adjustsFontSizeToFitWidth = true
answerLabel.lineBreakMode = .byTruncatingTail
我得到如下字符串: 大多数(第 1 行) 定义(第 2 行)y(第 3 行)
如果我愿意
answerLabel.numberOfLines = 0
answerLabel.adjustsFontSizeToFitWidth = true
answerLabel.lineBreakMode = .byWordWrapping
我得到一个大写字母“Mo”
显然,在这种情况下,我正在寻找的是最(第 1 行)绝对是(第 2 行)。
提前感谢您的帮助。
【问题讨论】:
标签中的约束条件如何? 标签位于 UiImageView 的顶部,因此标签约束是将 X 和 Y 与图像对齐,并将宽度和高度与图像成比例。 高度有问题,脱掉 那里的解决方案很棒。自己用过 【参考方案1】:斯威夫特 3 为动态文本信息设置行数为零,这将有助于改变文本。
var label = UILabel()
let stringValue = "Multiline UILabel not wrapping words correctly"
label.text = stringValue
label.numberOfLines = 0
label.lineBreakMode = .byTruncatingTail // or .byWrappingWord
label.minimumScaleFactor = 0.8 . // It is not required but nice to have a minimum scale factor to fit text into label frame
使用界面生成器:
【讨论】:
这适用于“最确定”字符串,但不适用于其他字符串。它仍然会导致单词被拆分。 请分享您的确切查询,还有什么意思,您的设计是什么,以便我可以为您提供相应的解决方案...以上是关于多行 UILabel 没有正确换行 [重复]的主要内容,如果未能解决你的问题,请参考以下文章