Se você ler uma sequência de um arquivo XML, a quebra de linha \ndessa sequência não funcionará em UILabeltexto. o\n não é analisado para uma quebra de linha.
Aqui está um pequeno truque para resolver esse problema:
// correct next line \n in string from XML file
NSString *myNewLineStr = @"\n";
myLabelText = [myLabelText stringByReplacingOccurrencesOfString:@"\\n" withString:myNewLineStr];
myLabel.text = myLabelText;
Portanto, você deve substituir a \nparte não analisada em sua string por uma analisada \nem um código codificado NSString.
Aqui estão minhas outras configurações de marcador:
myLabel.numberOfLines = 0;
myLabel.backgroundColor = [UIColor lightGrayColor];
myLabel.textColor = [UIColor redColor];
myLabel.font = [UIFont fontWithName:@"Helvetica Neue" size:14.0];
myLabel.textAlignment = UITextAlignmentCenter;
O mais importante é definir numberOfLinescomo 0(= número ilimitado de linhas no rótulo).
Não faço ideia por que a Apple optou por não analisar as \nstrings lidas no XML?
Espero que isto ajude.
UILabelnão tem uma propriedadeoriginnemsizeno iOS? Provavelmente deve serlabel.frame.origin.xetc.