我已经将UILabel的换行模式设置为截断尾部。问题是我有一个没有换行符的字符串。
UILabel是否有一种简单的方法可以为字符串添加断行线?
实施例: “这是一个适合2行的长字符串” - 添加断行 - > “这是一个长串\ n适合2行”
或者我是否必须创建一个函数来计算给定宽度和中断模式,在哪里插入断行?
谢谢!
答案 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:方法。