通过点击单元格中的图像视图进行转场[重复]

Posted

技术标签:

【中文标题】通过点击单元格中的图像视图进行转场[重复]【英文标题】:Making a segue from tapping on a image view in a cell [duplicate] 【发布时间】:2017-08-09 06:12:51 【问题描述】:

在我的 Xcode 项目中,我想通过点击表格视图中单元格中的图像来创建一个转场。我四处寻找答案,最相关的是将图像视图更改为按钮。不幸的是,这个解决方案不适用于我的项目,因为当图像在其中时,我以某种我想要的方式自定义了图像视图。

所以现在我迫切需要帮助。我在另一个单元格中有一个带有文本的按钮,它执行我想要的相同的 segue。它获取我放入该单元格的 objectID 并将其附加到全局变量,因此当另一个视图出现时,它将获取该 objectID 并执行必要的功能。我已经复制了下面那个按钮的代码:

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell 
    let cell = tableView.dequeueReusableCell(withIdentifier: "PostCell") as! Cell1
    cell.textButton.layer.setValue(indexPath, forKey: "index")
    return cell


@IBAction func textPressed(_ sender: Any) 
    let index = (sender as AnyObject).layer.value(forKey: "index") as! IndexPath

    let cell = tableView.cellForRow(at: index) as! Cell1

    globalText.append(cell.objectID)
    let text = self.storyboard?.instantiateViewController(withIdentifier: "TextVC") as! TextVC
    self.navigationController?.pushViewController(text, animated: true)

现在我只需要知道如何做同样的事情,但对于单元格中的图像视图。有人可以帮忙吗?

【问题讨论】:

"在另一个单元格中有一个带有文本的按钮" 与带有图像的单元格有什么关系吗?如果没有,只需静态创建单元格并使用按钮单击 【参考方案1】:

创建一个从视图控制器到目的地的 segue,然后给它一个“标识符”

在行的单元格中

let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(viewImage(_:)))
imageView.isUserInteractionEnabled = true
imageView.tag = tag!
imageView.addGestureRecognizer(gesture)

创建函数来执行segue

func viewImage(_ sender: AnyObject) 
    let tag = sender.view.tag
    // do what ever with tag
    performSegue(withIdentifier: "identifier", sender: self)

【讨论】:

你真的应该避免回答重复的问题 好的,下次不会了。 非常感谢!

以上是关于通过点击单元格中的图像视图进行转场[重复]的主要内容,如果未能解决你的问题,请参考以下文章

可重复使用的表格视图单元格中的 UIButton 图像切换问题

如何从表格视图单元格中的图像手势获取 indexPath

CollectionView 单元格转场

表格视图单元格中的圆形图像 swift

如何使用分页更改 tableview 自定义单元格中的 imageview 图像。

UIImageView 重复显示在另一个单元格中