【发布时间】:2016-10-11 09:49:04
【问题描述】:
我正在尝试将 3D Touch Preview & Commit Segue 添加到我的应用程序中,但由于某种原因,每当我尝试在 iOS 模拟器中窥视时,被窥视的视图控制器后面的区域会变成完全白色,而它意味着模糊。即使我尝试在另一个应用程序中以编程方式实现 3D Touch,也会发生这种情况。
在我使用情节提要的应用程序中,我为 segue 选择了以下选项:
我尝试按照以下步骤在另一个应用程序中以编程方式执行此操作(我在该应用程序中也有相同的错误):
- 致电
registerForPreviewing(with: self, sourceView: view)viewDidLoad - 如下实现
UIViewControllerPreviewingDelegate:- 在
previewingContext(_:viewControllerForLocation:)中,获取正确的indexPath,将上下文的源矩形设置为它,从情节提要中实例化详细导航控制器,然后返回它。 - 在
previewingContext(_:commit:)中,将(viewControllerToCommit as? UINavigationController)?.rootViewController推送到导航堆栈。
- 在
由于我没有启用 3D Touch 的 iOS 设备,我不完全确定此错误是否特定于 iOS 模拟器,但是否需要任何其他步骤才能正确实现 peeking 和 popping?
这是我遇到的错误示例:
【问题讨论】:
-
你找到解决办法了吗?
-
@user4992124 我在一个设备上测试了它,它在那里工作。 Here's a gif 工作正常。
标签: ios swift ios-simulator uistoryboardsegue 3dtouch