将断行添加到字符串,使其适合多行UILabel

时间:2012-06-23 01:29:25

标签: ios string uilabel truncate break

我已经将UILabel的换行模式设置为截断尾部。问题是我有一个没有换行符的字符串。

UILabel是否有一种简单的方法可以为字符串添加断行线?

实施例: “这是一个适合2行的长字符串” - 添加断行 - > “这是一个长串\ n适合2行”

或者我是否必须创建一个函数来计算给定宽度和中断模式,在哪里插入断行?

谢谢!

3 个答案:

答案 0 :(得分:2)

在字符串中添加\ r \ n。

这在角色10和角色13中相继出现。

这实际上是向系统发出的信息,即已发出回车和换行。这将告诉它将文本放在下一行:)

您还必须告诉标签允许多行。

UILabel *label; // We will assume this label exists.
label.numberOfLines = 3;
label.text = @"This String Breaks Here -->\r\nThis is on the next line";

标签将有2行甚至我将其设置为3.因为我只有一个换行符...除非文本换行,并且在那一行将换行。而另一个会在中间截断。

答案 1 :(得分:0)

对于简单的多行文字,

UITextView可能是更好的选择。如果您想要只读editable,请将NO属性设置为{{1}}。

答案 2 :(得分:0)

我认为最好的答案是你不应该照顾断线。只需将文本提供给UILabel,它将根据其断行模式正确分解。

重要的是要记住UILabel不会自己调整大小。如有必要,您必须增加其高度,然后分配文本。或者两件事都覆盖了setText:方法。