2016-06-01 7 views
1

Ich habe Lokalisierungsprobleme,die Zeichenfolge in iOS

Hier ist mein Code:

func attributedText()->NSAttributedString{ <br> 
self.lbltext.text = 
NSLocalizedString("\n" + “Best Friends“ + "\n" + "\n" + “James” + “Kelvin” +“Favorite Food” + "\n" + "\n" +"(1) Burger” + "\n" +"(2) Fried Food” + "\n" +"(3) Beer”, comment: "") 
let string = "\n" + “Best Friends“ + "\n" + "\n" + “James” + “Kelvin” + “Favorite Food” + "\n" + "\n" + 
       "(1) Burger” + "\n" + 
       "(2) Fried Food” + "\n" + 
       "(3) Beer” as NSString<br><br> 
let attributedString = NSMutableAttributedString(string: string as String, attributes: [NSFontAttributeName:UIFont.systemFontOfSize(14.0)]) 

let boldFontAttribute = [NSFontAttributeName: UIFont.boldSystemFontOfSize(17.0)] 

// Ein Teil der Zeichenfolge zu fett

attributedString.addAttributes(boldFontAttribute, range: string.rangeOfString(“Best Friends“)) 
attributedString.addAttributes(boldFontAttribute, range: string.rangeOfString(“Favorite Food”)) 
return attributedString 
}<br><br> 
self.lbltext = attributedText() 

=== ================

In Main.strings Datei, mein Code ist

/* Class = "UILabel"; text = "\n" + “Best Friends“ + "\n" + "\n" + “James” + “Kelvin” +“Favorite Food” + "\n" + "\n" + "(1) Burger” + "\n" + "(2) Fried Food” + "\n" + "(3) Beer”; ObjectID = "kDi-LM-j5f"; */ <br><br> 
"kDi-LM-j5f.text" = "\n" + “Best Friends“ + "\n" + "\n" + “James” + “Kelvin” + “Favorite Food” + "\n" + "\n" + "(1) Burger” + "\n" + "(2) Fried Food” + "\n" +"(3) Beer”; <br>  

=======================

In Localizable .strings Datei,

"\n" + “Best Friends“ + "\n" + "\n" + “James” + “Kelvin” + “Favorite Food” + "\n" + "\n" +"(1) Burger” + "\n" +"(2) Fried Food” + "\n" +"(3) Beer” = "my translate text...."; 

Fehler ist eine falsche Datenformat.

Ich denke, dass es wegen "\ n" verursacht wird.

Antwort

0

Ich dies sollten Sie versuchen zu vereinfachen, was Sie fragen NSLocalizedString, um Ihnen zu bieten.

Wenn man sich Ihren aktuellen Code:

NSLocalizedString("\n" + “Best Friends“ + "\n" + "\n" + “James” + “Kelvin” +“Favorite Food” + "\n" + "\n" +"(1) Burger” + "\n" +"(2) Fried Food” + "\n" +"(3) Beer”, comment: "") 

dann, dass ich bin zu raten, was man wirklich lokalisieren mag, ist der „Best Friends“, „Lieblingsessen“, „Burger“ (oder vielleicht nicht Burger, wie man das überall so nennt, wenn man darüber nachdenkt :)), "Fried Food" und "Beer".

Also, ich würde die Saite in Stücke aufteilen, habe meine Localizable.strings Schlüssel für die einzelnen Teile und lasse dann NSLocalizedString diese Einzelteile liefern und mache mir dann Sorgen darüber, es selbst zusammenzusetzen.

Etwas wie:

let bestFriends = NSLocalizedString("Best Friends", comment: "") 
let favoriteFood = NSLocalizedString("Favorite Food", comment: "") 
let burger = NSLocalizedString("Burger", comment: "") 
let friedFood = NSLocalizedString("Fried Food", comment: "") 
let beer = NSLocalizedString("Beer", comment: "") 

let text = "\(bestFriends) \n \n James Kelvin \(favoriteFood) \n\n (1)\(burger) \n(2) \(friedFood) \n(3) \(beer)" 

Und dann ... Ich bin nicht sicher „\ n“ funktioniert in Strings, wie Sie erwarten, so sollten Sie vielleicht, dass überdenken ... Ich bin sicher, dass der Compiler werde Sie wissen lassen, aber :)

Hoffe das hilft Ihnen.