3

Xcode 4.5 で 5.0 のターゲット ios を使用して作成したプロジェクトがあり、Base Internationalization を使用しました。Base Internationalization は、nib ファイルを Base.lproj に移動します。

このプロジェクトは、ios 6 を実行している iPhone 4 と、ios 6 を実行している iPad 3 で実行されます。ただし、ios 5.1.1 を実行している iPad 1 で実行しようとすると、このエラーが表示されます。ターゲットの Build Phase セクションでは、nib ファイルが赤で表示されます。

nib ファイルをビルド フェーズ バンドル リソースに追加しようとすると、それらは追加されますが、まだ赤色です (見つかりません)。nibファイルをバンドルリソースに追加するために、私が知っているあらゆる方法を試しました。どうすればこれを達成できますか?

4

2 に答える 2

2

Base Internationalization は iOS 6 でのみサポートされています。iOS 5 以下では、Xib をロードしようとするとクラッシュが発生します。

注: 奇妙なことに、iOS 5 のシミュレーターで実行すると動作します。それはバグでなければなりません。

この愚かな起動時のクラッシュでアプリをリリースした後の経験を詳しく説明しました: http://samwize.com/2012/11/22/warning-do-not-use-base-internationalization-in-ios-5/

于 2012-11-22T15:59:25.970 に答える
0

英語 (en) もローカライズする必要があるとは知りませんでした。英語にローカライズしたところ、nib ファイルをバンドルにロードできました。

まだ「NSInternalInconsistencyException」が発生します。理由:「バンドル内の NIB を読み込めませんでした:「NSBundle (loaded)」という名前が「MainViewController_iPad」です」

しかし、少なくとも今は、nib ファイルがバンドルに含まれていないためではありません。

于 2012-10-04T23:46:10.123 に答える