是否可以在iOS上不推送/显示预览控制器

时间:2019-12-10 16:32:38

标签: ios preview

我已经创建了一个控制器,可以使用UIViewControllerPreviewingDelegate进行预览。

我需要的是预览控制器只能是可预览的。最终不会被推送或呈现。到目前为止,我找不到解决此要求的方法。有任何想法吗?谢谢。

编辑:是的,如果我以某种方式不强行触摸,它不会调用func previewingContext(UIViewControllerPreviewing, commit: UIViewController)。但是我需要完全禁用它。

1 个答案:

答案 0 :(得分:0)

对于iOS 13之前的版本,我还没有解决方案。但是对于iOS 13及更高版本,由于上述@bsod不推荐使用注释UIViewControllerPreviewingDelegate,因此当我们使用其后继文件UIContextMenuInteractionDelegate时,我们就有了解决方案。

func collectionView(_ collectionView: UICollectionView, contextMenuConfigurationForItemAt indexPath: IndexPath, point: CGPoint) -> UIContextMenuConfiguration? {
    return UIContextMenuConfiguration(identifier: nil, previewProvider: {
        let contr = AController.init()
        return contr
     })
     // do not implement `actionProvider`
  }