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

时间:2016-09-24 08:52:39

标签: swift label

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

我尝试过其中一些代码:

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

但它似乎无法正常工作。如果有人给我建议怎么做,我会很高兴。我在想从左到右滚动 - >并显示整个句子,甚至点击标签,并显示一个包含整个文本的小窗口。

请您告诉我这是可能的,并提供一个我可以在我的代码中使用的示例。

1 个答案:

答案 0 :(得分:2)

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

如果没有创建新的弹出窗口或类似的东西,最好的办法是缩小字体大小或允许标签有多行文字。

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

 label.adjustsFontSizeToFitWidth = true

这会缩小文字的大小以适合标签。

,如果你的文字与标签的宽度相比真的很长,这可能会变得很奇怪。

对于标签中的多行,请尝试以下方法:

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

编辑:

由于您似乎没有额外行的空间,我建议将标签嵌入到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