Est-ce que quelqu'un sait comment utiliser les sauts de ligne dans NSString? J'ai besoin de faire quelque chose comme ça -
[NSString stringWithFormat:@"%@,\n%@", mystring1,mystring2];
Je viens de rencontrer le même problème lorsque je surcharge une description pour une sous-classe de NSObject. Dans cette situation, j'ai pu utiliser le retour chariot (\ r) au lieu de la nouvelle ligne (\ n) pour créer un saut de ligne.
[NSString stringWithFormat:@"%@\r%@", mystring1,mystring2];
Si votre chaîne va dans un UIView (par exemple un UILabel), vous devez également définir le nombre de lignes sur 0.
myView.numberOfLines=0;
J'ai constaté que lorsque je lisais les chaînes d'un fichier .plist
, les occurrences de "\n"
étaient analysées comme suit: "\\n"
. La solution pour moi était de remplacer les occurrences de "\\n"
par "\n"
. Par exemple, étant donné qu'une instance de NSString
nommée myString
lue dans mon fichier .plist
, j'ai dû appeler ...
myString = [myString stringByReplacingOccurrencesOfString:@"\\n" withString:@"\n"];
... avant de l'attribuer à mon instance UILabel
...
myLabel.text = myString;
NSString *str1 = @"Share Role Play Photo via Facebook, or Twitter for free coins per photo.";
NSString *str2 = @"Like Role Play on facebook for 50 free coins.";
NSString *str3 = @"Check out 'What's Hot' on other ways to receive free coins";
NSString *msg = [NSString stringWithFormat:@"%@\n%@\n%@", str1, str2, str3];
essayez ceci (stringWithFormat doit commencer par minuscule)
[NSString stringWithFormat:@"%@\n%@",string1,string2];
Le saut de ligne du caractère pour NSString est\r
manière correcte d'utiliser [NSString StringWithFormat:@"%@\r%@",string1,string2];
\ r ----> retour chariot
\ n\r semble travailler pour moi.
J'utilise Xcode 4.6 avec IOS 6.0 comme cible. Testé sur iPhone 4S. Essayez par vous-même.
Feng Chiu
Si\n ou\r ne fonctionne pas et si vous utilisez uiwebview et essayez de charger du code HTML à l’aide de la balise <br> pour insérer une nouvelle ligne. N'utilisez pas seulement la balise <br> dans NSString stringWithFormat.
Utilisez plutôt le même en ajoutant. c'est-à-dire en utilisant stringByAppendingString
yourNSString = [yourNSString stringByAppendingString:@"<br>"];
Dans Swift 3, c'est beaucoup plus simple
let stringA = "Terms and Conditions"
let stringB = "Please read the instructions"
yourlabel.text = "\(stringA)\n\(stringB)"
ou si vous utilisez un textView
yourtextView.text = "\(stringA)\n\(stringB)"
\n
est le moyen préféré pour casser une ligne. \r
fonctionnera aussi. \n\r
ou \r\n
sont excessifs et peuvent vous causer des problèmes plus tard. Cocoa, a des caractères de paragraphe et de saut de ligne spécifiques pour des utilisations spécifiques NSParagraphSeparatorCharacter
, NSLineSeparatorCharacter
. Ici est ma source pour tout ce qui précède.