如何在小 Label.text 中显示较大的文本?

How can I display larger text in small Label.text?

我是 swift 的初学者,我正在开发我的第一个应用程序。我现在遇到的问题是一个大文本,应该以小 label.text.

显示

我试过其中一些代码:

    Label.text = "The text I want to see here is too big for the size of the label"
    Label.numberOfLines = 0
    Label.sizeToFit() 

不过好像不行。如果有人给我建议如何去做,我会很高兴。我正在考虑从左向右滚动 -> 并显示整个句子,或者甚至轻敲标签并显示带有整个文本的小 window。

你能告诉我这可能吗,并提供一个我可以在我的代码中使用的例子。

label.sizeToFit 不会缩小文本以适合标签,而是更改标签的大小以适应您为标签设置的文本。

在不创建新弹出窗口 window 或类似内容的情况下,您最好的选择是缩小字体大小或允许标签包含多行文本。

对于缩小,我建议使用以下内容:

 label.adjustsFontSizeToFitWidth = true

这将缩小文本的大小以适合标签。如果您的文本与标签的宽度相比真的很长,这可能最终会表现得很奇怪,所以要小心。

对于标签中的多行尝试这样的事情:

 label.lineBreakMode = NSLineBreakByWordWrapping;
 label.numberOfLines = 0;

编辑:

由于您似乎没有 space 额外的行,我的建议是将标签嵌入到 scrollView 中,这样它就可以水平滚动,这样您就可以看到所有文本。

这可以通过以下方式完成:

var scrollView: UIScrollView = UIScrollView(frame: label.frame) //you can initialize this with the frame of your label
scrollView.addSubview(label)
scrollView.contentSize.height = label.frame.height
scrollView.contentSize.width = label.frame.width
scrollView.showsVerticalScrollIndicator = false //no vertical scroll bars