2010-12-30 5 views
2

Ich möchte die Sprache in den Anwendungseinstellungen änderbar machen. Dafür habe ich ein settings.bundle gemacht und ich habe die Sprache mit diesem Code How to force NSLocalizedString to use a specific language erzwungen, ich setze auch den UIApplicationExitsOnSuspend auf YES, um meine App jedes Mal neu laden zu lassen, wenn sie in den Hintergrund geht. Es funktionierte teilweise für mich, aber ich habe 2 Probleme: - Der Begrüßungsbildschirm (der lokalisiert wird) ändert sich mit dieser Methode nicht. - Ich muss/goBack zweimal eingeben, um die Sprachänderung wirksam für die Anwendung zu machen. Seht dies nur auf der OS 4 und höher.Ändern Sie die Sprache meiner IPHONE-App von den App-Einstellungen, ohne die Sprache des Geräts zu ändern

Hat jemand eine Lösung dafür?

Antwort

0

Sie müssen Ihr eigenes Übersetzungsframework dafür erstellen! Es tut uns leid !

+0

Vielen Dank VdesmedT für Ihre Antwort Ich denke, ich werde aufhören zu untersuchen in dieser Lösung. – marouen

0

Leider gibt es keinen eingebauten Weg. Am einfachsten wäre es, den Service wie GetLocalization.com zu integrieren, so dass Ihre App die Sprachdatei über die API herunterladen würde (dann ist es einfach, neue Sprachen und Übersetzungen hinzuzufügen, selbst wenn die App bereits veröffentlicht wurde). Dann brauchen Sie nur einen einfachen Loader, der diese Sprachdatei in den Arbeitsspeicher lädt und die ursprüngliche Zeichenfolge in der Laufzeit durch eine übersetzte ersetzt. Sie können Hash für die ursprüngliche Zeichenfolge berechnen, so dass sie schnell durchsucht werden können. Ein guter Algorithmus hierfür ist Peter Weinbergers HashPJW.

+0

Danke petteri für deine Antwort. Es ist eine Option, über die ich nicht nachgedacht habe. Aber jetzt bin ich mir sicher, dass die Lösung, die ich begonnen habe, ein totes Ende ist. – marouen