2011-07-17 10 views
3

はよく、私はちょうど私の挙上ローカライズの問題に直面し、問題点を明らかにするために実験を行うことにしました:iOSユニバーサルアプリのローカリゼーションxcode 4.バグ?

実験:

  1. はユニバーサルiOSアプリケーションを作成します。
  2. MainWindow_iPhone.xibとMainWindow_iPad.xibファイルの両方について、メインウィンドウのテキストを「My Universal iPhone(iPad)App」から「Hello」に変更します。
  3. iPhoneとiPadのシミュレータでアプリをビルドして実行します。両方とも "Hello"メッセージを表示しています。
  4. 変更(英語ローカライズがすでにあった)MainWindow_iPhone.xibためとMainWindow_iPad.xibの両方MainWindow_iPhone.xibとMainWindow_iPadのスペイン語バージョンのための「はいはい」と「こんにちは」から、メインウィンドウ上のテキストをスペイン語のローカライズを追加します。 xibファイル。
  5. シミュレータの言語をスペイン語に変更します。
  6. iPhoneとiPadのシミュレータでアプリをビルドして実行します - どちらもまだ "Hello"メッセージを表示しています - 何?!?!?!

修正:

  1. 開いているプロジェクトのプロパティタブを "ビルドフェーズ" に進んでください。 「コピーバンドルリソース」で
  2. XIBファイルを追加します。プロジェクトのes.lprojディレクトリにMainWindow_iPhone.xibとMainWindow_iPad.xibファイルを検索し、それらに
  3. ビルドを追加し、iPhoneやiPadのシミュレータでアプリを実行する - の両方の「はいはい」を表示メッセージ - OK

よく結論できますか?新しいローカライゼーションをxibファイルに追加するとき、xcodeはこのファイルを追加してバンドルリソースのターゲットをコピーするのを忘れています。別のローカリゼーション(例ではスペイン語)でアプリを実行した後、iOSはスペイン語のローカリゼーションを見つけることができません(もちろん、Xcodeはそれをコピーするのを忘れました!!!)xibの英語版をロードします。

手動でローカライズされたバージョンのファイルを追加するとプロジェクトツリーに混乱を招く - 追加されたファイルはプロジェクト階層に表示されますが、ローカライズされたxibファイルを展開すると既に表示されます。 (例では、プロジェクト構造ツリーにMainWindow_iPhone.xibとMainWindow_iPad.xibがありますが、ローカライズされたMainWindow_iPhone.xibファイルまたはMainWindow_iPad.xibファイルを展開した後、iPhoneおよびiPadファイルグループで利用できます)

またはam私は何か恋をしていますか?

+0

クリーンプロジェクトの今後のバージョンで修正することができます。シミュレータの内容をリセットします。 – JoePasq

答えて

0

Xcodeにリソースを手動で追加する場合は、プロジェクトをリーンしてリンクを再構築する必要があることがよくあります。 Command-Kはこのトリックを行うべきです。

私はXcodeの3でこれを行うには持っ思い出すことができない、それはすでにXcodeの4

関連する問題