我在UILabel的线路突破中苦苦挣扎。
我在vb.net中生成xml,然后在iPhone应用程序中解析它。 xml包含最初包含诸如
的html标签的文本,因此我可以并且需要用某些东西替换这些标签以在iphone中添加换行符
我该怎么办?我尝试了\n
,\n\r
,他们无法正常工作
任何帮助将不胜感激
谢谢
答案 0 :(得分:6)
如果从XML文件中读取字符串,则此字符串中的换行符\ n在UILabel tekst中不起作用。 \ n未解析为换行符。
这是解决这个问题的一个小技巧:
// correct next line \n in string from XML file
NSString *myNewLineStr = @"\n";
myLabelText = [myLabelText stringByReplacingOccurrencesOfString:@"\\n" withString:myNewLineStr];
myLabel.text = myLabelText;
所以你必须用硬编码的NSString中的解析后的\ n替换字符串中未解析的\ n部分。
以下是我的其他标签设置:
myLabel.numberOfLines = 0;
myLabel.backgroundColor = [UIColor clearColor];
myLabel.textColor = [UIColor redColor];
myLabel.font = [UIFont fontWithName:@"Helvetica Neue" size:14.0];
myLabel.textAlignment = UITextAlignmentCenter;
最重要的是将numberOfLines设置为0(=标签中无限数量的行)。
不知道为什么Apple选择不解析从XML读取的字符串?
希望这有帮助,
的Al
答案 1 :(得分:3)
\ n应该有效。确保将numberOfLines
设置为0,将lineBreakMode
设置为适合您的内容。