2010-08-09 3 views
0

Je suis aux prises avec un saut de ligne dans UILabel. Je génère un fichier XML sur vb.net, puis je l'analyse dans l'application iPhone. xml contient du texte qui contient initialement des balises html telles que
, donc je peux et dois remplacer ces balises par quelque chose pour ajouter un linebreak dans l'iphoneune autre question sur la rupture de ligne dans UILabel

Comment puis-je le faire? J'ai essayé \n, \n\r, ils ne travaillent pas un

Toute aide sera appréciée

vous remercie

+0

Reportez-vous [ce] (http://stackoverflow.com/questions/2253982/how-to-display-a-text-multilined-inside-a-cell -de-une-table-dans-iphone/2254265 # 2254265) Le meilleur de la chance. – Pugal

Répondre

3

\ n devrait fonctionner. Assurez-vous de régler numberOfLines sur 0 et lineBreakMode sur quelque chose qui vous convient.

+0

Je le fais, ça ne marche pas, l'étiquette montre juste "du texte \ nplus de texte" – Burjua

+0

poster un code s'il vous plaît comment vous assignez le texte à UILabel – sha

+0

Je n'attribue pas de texte statique, je l'obtiens de l'analyse xml. Peut-il être le cas? J'ai \ n dans le texte et il semble que l'objectif-c l'ignore tout simplement. Je suis tellement confus à ce sujet parce que je peux voir que cela fonctionne pour les autres. Je suis en train de simuler quelque chose de simple mais je ne le trouve pas. – Burjua

6

Si vous lisez une chaîne à partir d'un fichier XML, le saut de ligne \ n de cette chaîne ne fonctionnera pas dans UILabel tekst. Le \ n n'est pas analysé par un saut de ligne.

Voici une petite astuce pour résoudre ce problème:

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

myLabel.text = myLabelText; 

Vous devez remplacer la partie unparsed \ n dans votre chaîne par un analysable \ n dans un NSString hardcoded.

Voici mes autres paramètres de l'étiquette:

myLabel.numberOfLines = 0; 
myLabel.backgroundColor = [UIColor clearColor]; 
myLabel.textColor = [UIColor redColor]; 
myLabel.font = [UIFont fontWithName:@"Helvetica Neue" size:14.0]; 
myLabel.textAlignment = UITextAlignmentCenter; 

Le plus important est de mettre NumberOfLines à 0 (= illimité nr de lignes dans l'étiquette).

Aucune raison pour laquelle Apple a choisi de ne pas analyser \ n dans les chaînes lues à partir de XML?

Hope this helps,

Al

+0

tout ce que je peux dire est "je t'aime !!" mec!! J'essayais de trouver une réponse et finalement je l'ai fait avec ton post ... La réponse acceptée devrait être la tienne !! – Andres

Questions connexes