模式表示风格"过度上下文"和"超全屏"之间有什么区别?

use*_*197 7 xcode ios

我想知道当前上下文和全屏之间的区别是什么?

当我在它们之间切换时,我看不到我的应用程序中的任何更改.所有的动画看起来都一样.

Yuc*_*ong 11

如果您从已处于全屏模式的视图控制器中呈现视图控制器,则没有任何视觉差异.但是,如果呈现视图控制器未处于全屏模式,则当前上下文将有所不同.例如:

  • 左:在当前之前,当前视图控制器未处于全屏模式
  • 中:使用全屏显示新的视图控制器
  • 右:使用当前上下文呈现新的视图控制器

Github上提供的不同演示模式的完整列表.


Ras*_*n L 10

fullScreen:
呈现的视图覆盖屏幕(fullscreen)

currentContext:
UIModalPresentationCurrentContext风格涵盖了你的界面特定视图控制器。使用上下文样式时,您可以通过将其 definePresentationContext 属性设置为 来指定要覆盖的视图控制器true

当使用 UIModalPresentationFullScreen 样式呈现视图控制器时,UIKit 通常会在过渡动画完成后移除底层视图控制器的视图。您可以通过指定 UIModalPresentationOverCurrentContext 样式来防止删除这些视图。当呈现的视图控制器具有让底层内容显示通过的透明区域时,您可以使用该样式。

在此处阅读有关呈现 viewController 的更多信息。