UILabel上的怪异行为,在StoryBoard上带有\ n

Dom*_*ial 0 xcode storyboard uilabel ios swift

我想在上添加换行符UILabel。在情节提要上使用\n根本不起作用。这是一个例子。

添加标签

在StoryBoard上,我创建了2 UILabel并将其内容设置在专用字段中:

  1. Label 1\nhello\n由ALT + RETURN创建

UILabel 1

  1. Label 2\nhello 明确地 \n

UILabel 2

  1. 然后我添加了第三个标签,并在控制器上而不是在故事板上配置它:

    label3.numberOfLines = 0 label3.text =“ Label3 \ nhello”

语境

这是Xcode 8上的一个全新项目。语言是Swift 3.1,并且AutoLayout已关闭。因此,不得有任何外部库或AutoLayout的干扰。

结果

这是渲染。

结果

结论

UILabel如果在StoryBoard或代码源上使用,则行为是不一样的,这确实令人不安。当然,当您面对并解决了这个问题时,一切都是清晰的,因为答案是已知的。

使用a UITextView代替可以轻松解决此问题UILabel。因此,就目前而言,UITextView尽管事实UILabel必须为此目的工作,但我还是更喜欢使用多行显示简单文本。

Flo*_*n S 5

在UILabels中,您根本无法使用

\ n

你必须用

Alt + Enter

移至下一行。