Apple のリソース プログラミング ガイドによると、あらゆる種類のリソース ファイルにデバイス修飾子を使用できるはずです。
ここに引用があります
デバイス修飾子は、任意のタイプのリソース ファイルに適用できます。
ただし、これはほとんどのリソース (画像、ペン先) で機能するようですが、ストーリーボードで使用すると問題が発生します。
私がやろうとしたことは、~ipad
ファイル名に接尾辞が付けられた2つのストーリーボードを持ち、次のようにロードしようとすることです
UIStoryboard *mySB =
[UIStoryboard storyboardWithName:@"MyStoryboard" bundle:nil];
myViewController = [sigRequestSB instantiateInitialViewController];
そして、私はNSInternalInconsistencyException
例外を取得しています
奇妙なことに、~ipad
モディファイア付きのストーリーボードがある場合にのみこのエラーが発生し、モディファイアなしのストーリーボードが 1 つしかない場合は、それが iPad に読み込まれます。さらに、実行中のデバイスを検出し、完全なファイル名を使用してストーリーボードをロードすると (つまり、iPad ではファイル名に「~ipad」を添付します)、動作します。
ここに完全なエラーがあります
2013-08-29 15:32:44.294 MyApp[18757:c07] *キャッチされていない例外 'NSInternalInconsistencyException' が原因でアプリを終了しています。 k2-VhC」とディレクトリ「MyStoryboard.storyboardc」