еще один вопрос о разрыве строки в UILabel - PullRequest
0 голосов
/ 09 августа 2010

Я борюсь с разрывом строки в UILabel. Я генерирую XML в vb.net, а затем анализирую его в приложении для iPhone. xml содержит текст, который изначально содержит HTML-теги, такие как
, поэтому я могу и должен заменить эти теги чем-то, чтобы добавить перенос строки в iphone

Как я могу это сделать? Я пытался \n, \n\r, они не работают

Любая помощь будет оценена

Спасибо

Ответы [ 2 ]

6 голосов
/ 04 января 2011

Если вы читаете строку из XML-файла, разрыв строки \ n в этой строке не будет работать в тексте UILabel. \ N не анализируется до разрыва строки.

Вот небольшая хитрость, чтобы решить эту проблему:

// correct next line \n in string from XML file
NSString *myNewLineStr = @"\n";
myLabelText = [myLabelText stringByReplacingOccurrencesOfString:@"\\n" withString:myNewLineStr];

myLabel.text = myLabelText;

Таким образом, вы должны заменить непарсированную часть \ n в вашей строке на \ n проанализированную строку NSString.

Вот мои другие настройки метки:

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 решила не анализировать \ n в строках, прочитанных из XML?

Надеюсь, это поможет,

Al

3 голосов
/ 09 августа 2010

\ n должно работать.Убедитесь, что вы установили numberOfLines на 0, а lineBreakMode на то, что вам подходит.

...