Ios 如何在3D Touch下注册预览单个单元格?
目前我在Ios 如何在3D Touch下注册预览单个单元格?,ios,swift,3dtouch,Ios,Swift,3dtouch,目前我在viewDidLoad中有以下代码: if #available(iOS 9.0, *) { if traitCollection.forceTouchCapability == .Available { registerForPreviewingWithDelegate(self, sourceView: tableView) } } if traitCollection.forceTouchCapability == .available {
viewDidLoad
中有以下代码:
if #available(iOS 9.0, *) {
if traitCollection.forceTouchCapability == .Available {
registerForPreviewingWithDelegate(self, sourceView: tableView)
}
}
if traitCollection.forceTouchCapability == .available {
registerForPreviewing(with: self, sourceView: tableView)
}
关键是,在这种情况下,模糊的是UITableView
中的所有内容,而不是某个特定的UITableView单元格中的所有内容
如何仅暴露一个单元格
强制3d触摸期间此图像的状态。
您做得对,您确实需要在viewDidLoad
.
尽管如此,您还需要实现previewingContext
方法,以提供源rect。基本上,您会将单元格作为源矩形,它之外的所有内容都会变得模糊
请查看此以了解更多详细信息
您也可以签出您做得对,您确实需要在viewdiload
.
尽管如此,您还需要实现previewingContext
方法,以提供源rect。基本上,您会将单元格作为源矩形,它之外的所有内容都会变得模糊
请查看此以了解更多详细信息
您还可以签出这应该在viewDidLoad()中:
然后在previewingContext(\uPreviewingContext:UIViewControllerPreviewing,viewControllerForLocation location:CGPoint)中添加以下内容:
guard let selectedIndexPath = tableView.indexPathForRow(at: location) else { return nil }
previewingContext.sourceRect = tableView.rectForRow(at: selectedIndexPath)
这应该在viewDidLoad()中:
然后在previewingContext(\uPreviewingContext:UIViewControllerPreviewing,viewControllerForLocation location:CGPoint)中添加以下内容:
guard let selectedIndexPath = tableView.indexPathForRow(at: location) else { return nil }
previewingContext.sourceRect = tableView.rectForRow(at: selectedIndexPath)
我想这个答案可以帮助你:我想这个答案可以帮助你:他指的是手机他指的是手机