ios - 如何使自定义 UIPresentationController 在未从窗口中删除时不调用演示者视图生命周期方法(viewDidDisappear)?
问题描述
我正在使用自定义转换来呈现模态视图,其中呈现的 VC不覆盖整个屏幕并且演示者的视图没有被删除。它与系统默认的模态演示样式(又名工作表/卡片)非常相似。
当我使用系统的默认模态演示样式时,viewDidDisappear
不会在演示者 VC 上调用。viewDidDisappear
但是,当我调用时,我的自定义转换确实会触发endAppearanceTransition
- 即使它的视图从未从屏幕上移除。
fromVC.beginAppearanceTransition(false, animated: true)
UIView.animate(withDuration: 0.3) {
// ...
} completion: { didComplete in
// Calling this causes 'viewDidDisappear' to be called
fromVC.endAppearanceTransition()
}
如何模仿系统的转换行为?我不应该在自定义转换中使用beginAppearanceTransition
andendAppearanceTransition
方法吗?
解决方案
推荐阅读
- javascript - 如何从 javaScript 分配“网格区域”属性?
- javascript - 徽标图像无法在反应应用程序中呈现。模块解析失败
- python - 无效语法最多
- java - 如何使用随机生成的非重复数字创建二维数组?
- python - 在它穿过多边形的每个点处分割线串
- python - 如何将标签与matplotlib颜色条和散点图中的数据相关联
- ckeditor - CKEditor 5 为图像添加标题
- c# - Dragablz - 恢复关闭的标签页
- javascript - 如何解决弹性碰撞?
- lua - 如何在没有垃圾收集器立即销毁对象的情况下将函数调用与 Lua 中的中间返回对象链接起来?