选择 tableviewcell 时如何运行函数(例如,按下单元格时更新 UIImageView)

Posted

技术标签:

【中文标题】选择 tableviewcell 时如何运行函数(例如,按下单元格时更新 UIImageView)【英文标题】:How to run a function when tableviewcell is selected (for example, update UIImageView when cell is pressed) 【发布时间】:2017-03-17 05:55:56 【问题描述】:

我正在制作一个应用程序,该应用程序有一个集合表视图,当将单元格选择单元格将其SEGUS分成另一个视图控制器时,具有TableView。

我想使用这个 tableview 来更新我的 VC 中的 UIImageView。因此,假设我在 TBC 上按“仰卧起坐”,我希望图像视图更新为显示仰卧起坐的动画。希望有人能理解我想做什么,谢谢你的帮助!

【问题讨论】:

【参考方案1】:

当点击单元格时调用委托方法tableView(_:didSelectRowAt:)。 在此方法中,您可以将逻辑插入到另一个 viewController 或更新同一 viewController 中的 imageView

对于 Swift 3.0:

override  func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) 
  //your code...

文档:https://developer.apple.com/reference/uikit/uitableviewdelegate/1614877-tableview

【讨论】:

【参考方案2】:

你的问题很简单。 使用方法。

                 tableView(_:didSelectRowAt:)

然后把你的方法放在这里做选择,你可以导航到你想要的视图控制器。

【讨论】:

【参考方案3】:

你可以试试这个:

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) 
    let cell = tableView.cellForRow(at: indexPath) as UITableViewCell
    //so you can do whatever you want on your cell



【讨论】:

【参考方案4】:

是的,您可以使用 Tableview 的 didSelect 委托方法触发单元格的任何操作,但是...

我认为您正在尝试做的是从另一个 VC 中进行更新?是这样的话,你需要的是使用委托或 NSNotificationCenter 在类之间发送更新。

【讨论】:

以上是关于选择 tableviewcell 时如何运行函数(例如,按下单元格时更新 UIImageView)的主要内容,如果未能解决你的问题,请参考以下文章

如何在 tableViewCell 中运行 imagePicker

如何在 tableViewCell、Google 地图、Swift 中添加从地图中选择的选项

从 `ViewWillAppear` 触发 `TableViewCell` 函数

从`ViewWillAppear`触发`TableViewCell`函数

如何在 iPhone SDK 中使 tableviewcell 文本在触摸时可编辑?

为啥我在 swift 中调用 getIndex(cell: TableViewCell1) 函数时出错?