英語とフランス語の2つの言語を必要とするアプリがあります。
Localizable.stringsファイルをそれぞれの「en.lproj」フォルダーと「fr.lproj」フォルダーに既に設定しています...iPadの言語を(ネイティブ設定アプリで)変更してからアプリを起動すると、実際、正しいテキスト(つまり、英語のコピーまたはフランス語のコピー)をロードします。
アプリを再起動せずに、UISegmentedControlで2つの言語を切り替える必要があります。
アプリに(現在の)言語を変更させて、すべてのUILabelsのテキストとUIImageViewsの画像を(再)設定するメソッドを呼び出すと、反対側の.lprojフォルダーのLocalizable.stringsファイルから読み取るようにするにはどうすればよいですか?!?
UISegmentedControlの使用方法を知っていますが、それは私の質問ではありません。アプリケーションのバンドル言語やロケールなどを設定するコード行をもっと探しています(internationalization.localizationはまったく新しいため)。
-
UIImageViewの画像を設定する方法の例:
myUIImageView1.image = [UIImage imageNamed:NSLocalizedString(@"myUIImageView1", @"comment for the translator")];
UILabelのテキストを設定する方法の例:
myLabel1.text = NSLocalizedString(@"myLabel1", @"comment for the translator");