gpt4 book ai didi

ios - 如何通过代码手动实现表格特定行的 Peek & Pop 功能?

转载 作者:搜寻专家 更新时间:2023-10-31 22:24:36 26 4
gpt4 key购买 nike

目标

我正在尝试将查看和弹出功能添加到我的表格行


enter image description here

最佳答案

您没有从表格 View 中获取单元格。所以步骤如下:

  1. 使用 UIViewControllerPreviewingDelegate 方法中的位置点获取 indexPath
  2. 使用 indexPathtableView 获取单元格。
  3. 获取单元格后,将单元格框架转换为表格 View 框架。
  4. 将框架作为 sourceRect 提供给 previewingContext

代码如下:

viewDidLoad

if self.traitCollection.forceTouchCapability == .available {
registerForPreviewing(with: self, sourceView: tableView)
}

在扩展中:

extension ProfileViewController: UIViewControllerPreviewingDelegate {

func previewingContext(_ previewingContext: UIViewControllerPreviewing, viewControllerForLocation location: CGPoint) -> UIViewController? {
if let indexPath = tableView.indexPathForRow(at: location), let cell = tableView.cellForRow(at: indexPath) {
previewingContext.sourceRect = tableView.convert(cell.frame, to: self.tableView)
guard let detailViewController = storyboard?.instantiateViewController(withIdentifier: "profileDetail") as? ProfileDetailViewController else {
return nil
}
return detailViewController
}
return nil
}

func previewingContext(_ previewingContext: UIViewControllerPreviewing, commit viewControllerToCommit: UIViewController) {
self.navigationController?.pushViewController(viewControllerToCommit, animated: true)
}
}

关于ios - 如何通过代码手动实现表格特定行的 Peek & Pop 功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52879877/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com