7

普遍的なプロジェクトを試してみて、ストーリーボードから識別子で vc をロードしたいと思います。ストーリーボードにアクセスするときにイディオムの明示的なチェックを回避する方法はありますか?

この醜いコードは機能します....

UIStoryboard *storyboard;

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
    storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil];
}
else {
    storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
}

UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"MyViewController"];

しかし、うん。文字列リテラルのメイン ストーリーボードは見るのが難しい (アプリが [UIStoryboard mainStoryboard] と言うことができるように、プロジェクトがメイン ストーリーボードの設定を保存できない理由がわからない;) が、明示的な慣用句チェックは橋渡しが遠すぎる.

このコードを消去できる隠されたインテリジェンス (Retina ディスプレイをサポートする "@2x" 画像サフィックスに匹敵するもの) はありますか?

4

1 に答える 1