1

アプリにストーリーボードを使用しており、iPhone 5 と互換性を持たせようとしています。ただし、自動レイアウトを有効にするとすべてが台無しになります-コードの後半のフレーム変更が機能しないなど... iPhone 5レイアウトを古いiPhone 4以下のレイアウトから完全に独立させる方法はありますか( iPhone 5 用に別の絵コンテを作成するなど)?

前もって感謝します!

4

1 に答える 1

2

Apple が提供する自動レイアウトを使用したくない場合は、デバイスの画面サイズを確認できます。これはstackoverflowの別の投稿からのマクロです

#define IS_IPHONE_5 ( fabs( ( double )[ [ UIScreen mainScreen ] bounds ].size.height - ( double )568 ) < DBL_EPSILON )

そのマクロを使用すると、iPhone 5 専用の別のストーリーボードを作成し、これを使用して AppDelegate で初期化できます。

NSString *storyboardName;
if (IS_IPHONE_5)
    storyboardName = @"MainStoryboard_iPhone5";
else storyboardName = @"MainStoryboard_iPhone";
storyboard = [UIStoryboard storyboardWithName:storyboardName bundle:nil];
于 2012-11-04T15:39:07.267 に答える