2012-01-23 18 views
2

Objective-Cでコーディングするのは初めてですが、モバイル開発のJavaの世界から来ています。 Androidでは、文字列リソースを使用し、Javaクラスのリソースを参照します。私たちが使用しているはずのiOSに類似のプロセスがありますか、または文字列を実装ファイルに "ハードコード"していますか?私はまだローカライズ可能な文字列(と.strings)ファイルを使用して良いチュートリアルを発見していない。iOSで文字列を利用する最良の方法

+0

はすでにこっち答え: http://stackoverflow.com/questions/778466/iphone-application-international-sales – Almo

答えて

6

FoundationのNSLocalizedStringマクロを使用して、ローカライズされた文字列を取得できます。ここをクリックしてください: http://www.icanlocalize.com/site/tutorials/iphone-applications-localization-guide/

例:バイリンガル(英語 - フランス語)のアプリを作成します。 ユーザーに表示する文字列が見つかるたびに、実際の文字列定数の代わりにNSLocalizedStringを使用します。たとえば、次のように

代わり

self.title = @"Welcome"; 

使用

self.title = NSLocalizedString(@"Welcome"); 

は、あなたのアプリケーションバンドル内の2つのディレクトリを作成します。最初のLocalizable.stringsで

MyApp.app 
    English.lproj 
     Localizable.strings 
    French.lproj 
     Localizable.strings 

はあなたが書くことができますファイル次のようなキーと値のペア:

二一
"Welcome" = "Welcome"; 

"Welcome" = "Bienvenus"; 

あなたのアプリケーション、それはNSLocalizedStringマクロを使用して再コンパイルする、これらのファイルやフォルダを追加すると、あなたがするときも、フランス語で、あなたのアプリを使用することができますシステム言語はフランス語です。

+0

それでもハードコードに実装の「ようこそ」の文字列を持っているので?ソフトコードでこの文字列にアクセスする方法はありますか? – clocksmith

2

確かに、それを行う方法があります。

は、ここでは、アップルのドキュメントを見てみましょう - http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/LoadingResources/Strings/Strings.html

本当にそれよりも、それをはるかにありません。私はたくさんの文字列を厳密にコーディングする傾向がありますが、それが国際化の基礎であるため、文字列リソースについて学ぶのに時間を割くことは間違いありません。

関連する問題