当文本不适合多行 (numberOfLines = 0) 标签的一行时,我试图阻止文本换行,但要做到这一点,我需要知道一行标签中可以容纳多少个字符,所以我可以切断其余部分,只需使用“\n”将下一个字符串添加到下一行。我将如何使用我的字体以及标签的大小和大小(顺便说一下,Courier 17.0 等宽)查找每行可以容纳多少个字符。标签的大小也可以是动态的,因为屏幕大小/大小类可以更改,这就是需要这样做的原因。
例如我想要发生的事情以及为什么我需要知道有多少个字符适合
一行:
var lineOne = "Too long"
var lineTwo = "Also too long"
myLabel.text = lineOne + "\n" + lineTwo
// Then I would calculate how many characters can fit on a line and alter the two strings accordingly
标签的输出(假装标签字符限制恰好是3):
Too
Als
我刚刚意识到我需要能够计算的另一件事是如果 numberOfLines = 0,标签(高度)中可以容纳多少行。
Best Answer-推荐答案 strong>
我认为您不需要以编程方式进行操作。
为此,请选择您的标签并在属性检查器中更改
换行 到字符换行 。
然后将 Lines 更改为您希望允许的最大行数。
您可以相应地添加高度和宽度约束。然后使用 .sizeToFit();
关于ios - 计算 UILabel 的一行可以容纳多少个字符,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/39378480/
|