Ändern der Sprache für NSLocalizedString() in Laufzeit
Habe ich eine iPhone-Anwendung, die hat eine Taste zum ändern der display-Sprache im Lauf der Zeit. Ich habe mir bei NSLocalizedString() zurückgeben wird, die entsprechenden Zeichenfolgen je nach Vorliebe. Was sind meine Optionen eher als harte Kodierung aller Zeichenfolgen anzuzeigen und zurück entsprechend der Benutzer-Auswahl der Sprache im Lauf der Zeit? Alle Hinweise werden sehr geschätzt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Basiert auf dem Beitrag von dem user "object2.0", ich habe zusammen einige Beispiel-code, den Sie in Ihrer Anwendung verwenden können, um zu ändern die Sprache der Benutzeroberfläche auf die Fliegen.
Die hauptlokalisation der Klasse, die die harte Arbeit:
Vorausgesetzt, Sie haben diese Funktion in eine Globale Klasse namens utils, rufen Sie diese Funktion mit dem folgenden code (Beispiel für die Ausgabe das Wort "Einstellungen".
Um die Sprache zu ändern:
Verwenden Sie zum festlegen der Sprache, um durch die Kraft
dann verwenden
zeigen lokalisierte Zeichenfolge...
Den trick, um bestimmte Sprache, indem Sie Sie aus der app zu zwingen, die NSLocalizedString bestimmte bundle-abhängig von der gewählten Sprache ,
hier ist der Beitrag den ich geschrieben habe für diese http://learning-ios.blogspot.com/2011/04/advance-localization-in-ios-apps.html
und hier ist der code einer Beispiel-app https://github.com/object2dot0/Advance-Localization-in-ios-apps
Den richtigen "User experience" ist für den Benutzer zu wählen Sie Ihre Sprache über das system preference-panel, nicht die app (oder app-Einstellungen-panel, etc.). Es gibt keine Möglichkeit, dies zu ändern, pro app, und Sie würden nicht wollen, dass jede app ändern die systemweite Einstellung.