我正在尝试弄清楚如何为我正在开发的应用程序实现“Peek and Pop”3D 触摸功能,但我不确定如何为手动 segue 实现该功能,因此任何帮助或文档都会不胜感激。
为了给你更多信息,我有一个UITableView
who's 控制器有 2 个手动 segues,我的代码根据用户点击的表格元素在它们之间进行选择。如果它是我从原型表单元格拖到目标视图控制器的一个转场,我可以选中一个框,但手动转场不存在该框。
我做了一些谷歌搜索,看看是否有这方面的文档,但我找不到任何东西。
根据UIViewControllerPreviewingDelegate 参考,实现
func previewingContext(_ previewingContext: UIViewControllerPreviewing,
commitViewController viewControllerToCommit: UIViewController)
实现此方法以适合您的应用程序的方式配置和呈现提交(弹出)视图控制器。
例如,要在导航控制器中显示提交视图控制器的视图,请调用导航控制器的 showViewController:sender: 方法;要以模态方式呈现视图,您可以调用 presentViewController:animated:completion: 方法。
所以在你的实现中你可以说:
func previewingContext(previewingContext: UIViewControllerPreviewing,
commitViewController viewControllerToCommit: UIViewController){
self.navigationController.showViewController(viewControllerToCommit,sender:self)
}
或者
func previewingContext(previewingContext: UIViewControllerPreviewing,
commitViewController viewControllerToCommit: UIViewController){
self.navigationController.pushViewController(viewControllerToCommit,animated:true)
}
如果您对此更满意。