\n不在UIlabel中工作

Bur*_*jua 7 iphone newline objective-c uilabel

我在这里看到过类似的问题,但仍然可以弄清楚为什么它不起作用.

如何在多行UIlabel中添加换行符(换句话说添加新段落)?

我有一个带有大量文字的标签,

lbl.numberOfLines = 0;
lbl.sizeToFit;
Run Code Online (Sandbox Code Playgroud)

但我仍然得到这样的东西:"有些文字在这里\n在这里,我想要新的一行"

谢谢

小智 20

这是一个老问题,但只是想让你知道这\r就像魅力:)


joe*_*elm 14

UILabel不会尊重\n,您可以使用option-return(在"界面"构建器中)强制您想要换行的位置.

您可以使用UIWebView代替标签,然后您可以根据自己的喜好进行格式化.(并将lineBreakMode设置为AngeDeLaMort上面说的.)

  • 这是不对的!UILabel将尊重\ n,但不会尊重\\ n(有充分的理由!):) (2认同)

Bha*_*tel 6

你可以尝试这个:

lbl.text = @"My \n label";
lbl.numberofLines = 0;
Run Code Online (Sandbox Code Playgroud)


pat*_*oid 5

这应该工作:

lbl.lineBreakMode = NSLineBreakByWordWrapping;
lbl.numberOfLines = 0;
Run Code Online (Sandbox Code Playgroud)


Lyt*_*tic 5

你的问题可能不同......但我的是一个字面字符\n,它实际上\\n在内存中。

我用以下方法解决了它:

label.text = [rawText stringByReplacingOccurrencesOfString@"\\n" withString:@"\n"];
Run Code Online (Sandbox Code Playgroud)

您仍然需要设置换行模式以及 numberOfLines 才能使其正常工作。