iOS 7では、UIのレイアウトと外観をカスタマイズする方法にいくつかの変更が加えられています。ビューコントローラーのレイアウト、ティントカラー、フォントの変更は、アプリ内のすべてのUIKitオブジェクトに影響します。さらに、ジェスチャレコグナイザAPIの機能強化により、ジェスチャ操作をより細かく制御できます。
ビューコントローラーの使用
iOS 7では、ビューコントローラーは全画面レイアウトを使用します。同時に、iOS 7では、ビューコントローラーがビューをレイアウトする方法をより詳細に制御できます。特に、フルスクリーンレイアウトの概念は、ビューコントローラーがビューの各エッジのレイアウトを指定できるように改良されました。
wantsFullScreenLayoutあなたが現在指定した場合、ビューコントローラのプロパティは、iOS 7で廃止されましたwantsFullScreenLayout = NO、それはiOSの7で実行したときに、ビューコントローラは、予期しない画面位置でそのコンテンツを表示することができます。
ビューコントローラーがビューをレイアウトする方法を調整するにUIViewController
は、次のプロパティを提供します。
edgesForExtendedLayoutプロパティは使用UIRectEdgeなし、すべてを指定しないことに加えて、矩形の4辺のそれぞれを指定するタイプを、。edgesForExtendedLayoutバーの半透明性に関係なく、ビューのどのエッジを拡張するかを指定するために使用します。デフォルトでは、このプロパティの値はUIRectEdgeAllです。
- extendedLayoutIncludesOpaqueBars
デザインで不透明なバーを使用する場合edgesForExtendedLayoutは、extendedLayoutIncludesOpaqueBarsプロパティ
もNOに設定して調整します。(のデフォルト値extendedLayoutIncludesOpaqueBarsはNOです。)
- automaticallyAdjustsScrollViewInsets
スクロールビューのコンテンツインセットを自動的に調整しない場合は、NOに設定automaticallyAdjustsScrollViewInsetsします。(のデフォルト値はYESです。)automaticallyAdjustsScrollViewInsets
- topLayoutGuide、bottomLayoutGuide
topLayoutGuide及びbottomLayoutGuide特性は、ビューコントローラのビューの上部または下部のバーのエッジの位置を示します。バーがビューの上部または下部に重なる場合、Interface Builderを使用topLayoutGuideして、bottomLayoutGuideの下部または上部に制約を作成することにより、バーを基準にビューを配置できます。(バーがビューに重ならない場合、の下部はビュー
topLayoutGuideの上部と同じで、上部はビュー
bottomLayoutGuideの下部と同じです。)要求されたときに両方のプロパティが遅延して作成されます。