2010-06-11 10 views
6

HALLO alle,Änderung locale programmatisch

i hv eine Tabellenansicht zeigt 4 Sprachen Englisch, Spanisch, Deutsch und Französisch,

i für jede Ansicht xib Jahren geschaffen, auch Localizable.strings erstellt. alles funktioniert gut, wenn ich Sprache vom Simulator ändere. ganze App wird nach Sprache ausgewählt geändert ..

, was ich versuche zu tun ist, statt zu ändern Sprache aus Simulators Verzeichnis der Sprache, i Sprache durch meine Tabellenansicht ändern möchten, welche Sprachen zeigt. Wenn ich auf Tabelle mit spanischen Werten tippe, sollte die ganze App ihre Sprache ändern.

können wir das tun.

Die Spracheinstellung des Simulators ändert die Sprache des gesamten Simulators, Ich möchte die Sprache meiner App über meine App ändern.

Hoffnung auf eine schnelle Antwort

Hilfe ist immer

Grüße Shishir

Antwort

11

Versuchen Sie, die folgende Sache zu schätzen.

NSArray *languages = nil; 

languages = [NSArray arrayWithObject:@"en"]; 
[[NSUserDefaults standardUserDefaults] setObject:languages forKey:@"AppleLanguages"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 

NSString *localizedStr = NSLocalizedString(@"ABOOK", @"Hello"); 
NSLog(@"String 11 = %@", localizedStr); 
+1

Warum ist das die akzeptierte Antwort? Das funktioniert bei mir total nicht: -/ –

+0

Das funktioniert bei mir! Nach Einstellung mit der obigen Funktion. Probieren Sie 'NSLocale.preferredLanguages ​​() [0] als String' aus –