UIPresentationController

UIPresentationController

对于大多数人来说,这应该是一个简单的问题。现在像显示的照片一样显示视图控制器,现在在它们的顶部都有一个栏(请参见红色箭头),以指示用户可以向下滑动以关闭该控制器。请解决以下任何问题:


该图标的正确用语是什么?
它是swift的ui工具/库的一部分,还是只是UIImage?
有人可以提供有关实现方式的简单代码段吗-也许与下面的代码类似


let sampleController = SampleController()
sampleController.POSSIBLE_OPTION_TO_SHOW_BAR_ICON = true
present(sampleController, animated: true, completion: nil)


Please see the red arrow for the icon that I am referring to

ios - Swift Presenting Controller关闭条形指示器-LMLPHP

最佳答案

您要查询的功能在UIKit中不可用。

您必须使用子类UIPresentationController实现自定义视图控制器过渡动画,以渲染上拉/下移手柄。

UIPresentationController (developer.apple.com)


  对于自定义演示,您可以提供自己的演示控制器,以使所呈现的视图控制器具有自定义外观。演示控制器管理与视图控制器及其内容分开的任何自定义镶边。例如,放置在视图控制器视图后面的变暗视图将由演示控制器进行管理。 Apple Documentation


这可以通过任何UIView来实现,或者可以通过将子视图添加到contentView上方的UIPresentationController的presentedView中来使用任何图像。

要提供滑动手势以退出/显示,您必须实现UIPercentDrivenInteractionController

您可以参考下面的本教程以获得详细的了解。

UIPresentationController Tutorial By raywenderlich.com

您应在本例中查找presentationDirection = .bottom

对于手势驱动解雇,您应查看以下教程

Custom-UIViewcontroller-Transitions-getting-started

希望对您有所帮助。

10-08 06:04