Es gibt eine Tonne gebaut Infrastruktur dafür ist. Grundsätzlich haben die NSBundle-APIs das Konzept der Lokalisierung und leiten alles, was sie durchläuft, transparent in eine entsprechend lokalisierte Version um, wenn eine verfügbar ist. Wenn Sie jemals ein ".lproj" in Ihrem Paket gesehen haben, ist das für die Lokalisierung.
Okay, also ist die Frage, wie Sie das einrichten? Mit Nibs ist es einfach, du legst einfach mehrere Kopien der Feder in deine App, eine in jedem Lproj. Strings sind ein wenig komplizierter, was Sie tun, ist eine Strings.localizable-Datei erstellen, und dann, wenn Sie eine Zeichenfolge benötigen, rufen Sie NSLocalizedString(), die die Zeichenfolge in der Localized.strings-Datei Ihrer aktuellen Sprache sucht.
Xcode hat einige eingebaute Möglichkeiten, dies schnell einzurichten. Sie können eine beliebige Ressource auswählen und das Fenster "Informationen anzeigen" öffnen. Dort befindet sich die Schaltfläche "Localizable". Sobald Sie darauf klicken, wird eine weitere Schaltfläche "Lokalisierungen hinzufügen" angezeigt, mit der Sie bestimmte Lokalisierungen zum Projekt hinzufügen können. An dieser Stelle befindet sich neben Ihrer Ressource ein Dreieck, mit dem Sie die Ressource in jedem bestimmten Gebietsschema bearbeiten können.
Je nach App gibt es eine Reihe von Möglichkeiten, um einige dieser Dinge zu handhaben, und Apple bietet die entsprechenden Tools, um dies zu vereinfachen. This ist ein anständiger Blog-Post darüber, wie man Dinge lokalisieren kann.
Die Sache, an die Sie denken sollten, ist, dass Sie wahrscheinlich falsch liegen, wenn Sie die Lokalisierung nachschlagen und manuell entscheiden, welche Ressourcen Sie verwenden sollen. In den meisten Fällen möchten Sie einfach den Ort angeben, der eine Lokalisierung erfordert, und das System nach der Ressource über eine API fragen, die diese für Sie verarbeitet (NSLocalizedString(), - [NSBundle pathForResource: ofType:] usw.).
Sie können auf ch17 im Buch Beginn der iPhone-Entwicklung verweisen. –