Ene*_*nso 5 modalviewcontroller ios ios13 interactive-dismissal
TLDR:寻找一种解决方案,以在从导航栏向下拖动时启用交互式关闭,而不是从视图控制器的视图中拖动。
iOS 13 模态视图控制器允许通过以下几种方式禁用交互式关闭:
vc.modalPresentationStyle = .fullScreen
(请参阅在 iOS 13 全屏显示模式)viewController.isModalInPresentation = true
(请参阅禁用 iOS 13 中呈现的视图控制器的交互式关闭)UIAdaptivePresentationControllerDelegate
委托方法(请参阅iOS13 中的 UINavigationBar 更改)如果您想要与 iOS 12 及更低版本相同的行为,第一个很棒。
第二个,非常适合防止交互式关闭,但仍然允许在从主视图控制器视图中拉动时向下拖动视图控制器(带有漂亮的动画)。
后者允许更好地处理事件,但无助于防止从视图控制器的视图中拖动。
我见过的最接近的事情是设置刷新控件以防止在下拉刷新期间被关闭。此 GIF 显示了我正在寻找的行为(来源):
这种下拉刷新交互可以在 iOS 日历应用程序的模式收件箱屏幕中看到。
我正在寻找的行为与上面的下拉刷新相同,但没有滚动视图和刷新控件。
基本上,对视图控制器视图的触摸不应触发交互式解除。
我尝试了以下方法,但没有运气:
view.isExclusiveTouch = true
view.isUserInteractionEnabled = false
总之,我需要的是:
谢谢!
归档时间: |
|
查看次数: |
951 次 |
最近记录: |