サーチ…


前書き

モーダルプレゼンテーションスタイルは、あるビューコントローラから別のビューコントローラに移行するときに使用されます。このカスタマイズを実現するには2つの方法があります。 1つはコードスルー、もう1つはInterface Builder(セグを使用)です。この効果は、 modalPresentationStyle変数をUIModalPresentationStyle enumのインスタンスに設定することで実現されます。 modalPresentationStyleプロパティは、クラス変数でUIViewControllerと方法を指定するために使用されるViewController 、画面上に提示されます。

備考

アップルの次の言葉を常に覚えておいてください。

水平コンパクト環境では、モーダルビューコントローラは常にフルスクリーンで表示されます。水平な環境では、いくつかの異なるプレゼンテーションオプションがあります。

Interface Builderを使用したModalPresentationStyleの探索

これは、iOSのさまざまなModalpresentationStyleを示す非常に基本的なアプリになります。 ここにあるドキュメントによれば、 UIModalPresentationStyleには次の9つの異なる値があります。

  1. fullScreen
  2. pageSheet
  3. formSheet
  4. currentContext
  5. custom
  6. overFullScreen
  7. overCurrentContext
  8. popover
  9. none

プロジェクトを設定するには、通常のiOSプロジェクトを作成し、2つのViewControllersを追加するViewControllersです。最初のViewController UIButtonViewController 、それをTarget -> Actionメカニズムを介して2 ViewController接続します。両方とも区別するためにViewControllers 、のbackgroundプロパティ設定UIViewViewControllerいくつかの他の色。すべてうまくいけば、Interface Builderはこれに見えるはずです。 初期インタフェースビルダ

このプロジェクトをビルドしてiPadで実行していることを確認してください(なぜiPadなのかについては、「備考」を参照)。プロジェクトの設定が完了したら、セグを選択してattributes inspector移動しattributes inspector 。あなたはこのようなものを見ることができるはずですが、 ここに画像の説明を入力

kindプロパティをPresent Modally設定します。

さて、この例では少しのコードしか必要としないので、すべての効果を見ることはできません。

fullscreenから始めましょう。このエフェクトは、[ Kind ]タブで[ Present Modally ]を選択すると、デフォルトで選択されます。ビルドして実行すると、2 ViewControllerがiPadのフルスクリーンを占有します。

ここに画像の説明を入力

次はpageSheetです。 Presentationタブからこのオプションを選択できます。このオプションでは、デバイスがポートレートモードになっているとき、2 ViewControllerはフルスクリーンに似ていますが、2 ViewControllerはデバイス幅がかなり狭いです。また、2 ViewControllerカバーされていないコンテンツも淡色ViewControllerされます。

ここに画像の説明を入力

formSheetスタイルでは、2 ViewControllerがデバイスの中央に配置され、デバイスのサイズよりもサイズが小さくなります。また、デバイスがランドスケープモードにあり、キーボードが表示されているViewControllerViewControllerを表示するためにビューの位置が上に調整されます。

ここに画像の説明を入力

私たちが試みようとしている最後のスタイルはpopoverです。このスタイルを選択するには、[ Kind ]タブで[ Present as Popover表示]を選択します。 2 ViewControllerは小さなポップオーバー(サイズを設定できます)として表示されます。背景のコンテンツは淡色表示されます。ポップオーバーの外側にあるタップは、ポップオーバーを解除します。あなたのAttributes Inspectorは、このようなものに見えるはずですが、

ここに画像の説明を入力

Anchorは、ポップオーバーの矢印を指すUI要素です。 Directions 、あなたのポップオーバーの許可方向でAnchorで指すように。

ここに画像の説明を入力

さらに、これらの基本的なモーダルプレゼンテーションスタイルはありますが、実現するには少し複雑で、いくつかのコードが必要です。詳細は、Appleのドキュメントを参照してください。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow