我使用3D触摸在UITableViewl中按下一个单元格,然后它提示错误的单元格视图

Jer*_*Shi 3 macos peek ios 3dtouch

在我的测试演示中,我将UITableView放入故事板中的UIViewController.当我在iPhone上测试demo时,我在tableView中按了一个单元格,我在图片中得到了这个错误

错误的细胞视图

func previewingContext(previewingContext: UIViewControllerPreviewing, viewControllerForLocation location: CGPoint) -> UIViewController?方法中,我使用

guard let indexPath = tableView.indexPathForRowAtPoint(location), cell = tableView.cellForRowAtIndexPath(indexPath) else { return nil } 在UITableView中获取按下的单元格.

如果你给我任何答案,我真的很感激!

Spr*_*982 14

注册源视图时,是否添加了视图控制器的视图或桌面视图?我在集合视图上遇到了类似的问题,但是一旦我注册了实际视图而不是视图控制器的视图,行为就被纠正了.

换句话说......

这给了我错误的细胞

registerForPreviewingWithDelegate(self,sourceView:self.view)

这纠正了这种行为

registerForPreviewingWithDelegate(self,sourceView:self.tableView)