Swift 如何更改某些单元格';跨不同视图控制器创建视图

Swift 如何更改某些单元格';跨不同视图控制器创建视图,swift,uitableview,selected,Swift,Uitableview,Selected,我正在建立一个录音应用程序,用户可以保存他们的录音。 如何在UITableView中更改某个单元格的视图,以向用户显示该单元格正在播放,并且可以同时更改其他ViewController中具有相同内容的单元格? 此外,当音频播放器完成时。可以将视图更改回默认值 我已尝试覆盖setSelected,但当我重新加载表格视图时,单元格无法保持选中状态,并且当音频结束时,单元格自身无法取消选中。我也不能同时更改具有相同内容(相同音频)视图的单元格。 有没有办法克服这个问题 override func se

我正在建立一个录音应用程序,用户可以保存他们的录音。 如何在UITableView中更改某个单元格的视图,以向用户显示该单元格正在播放,并且可以同时更改其他ViewController中具有相同内容的单元格? 此外,当音频播放器完成时。可以将视图更改回默认值

我已尝试覆盖setSelected,但当我重新加载表格视图时,单元格无法保持选中状态,并且当音频结束时,单元格自身无法取消选中。我也不能同时更改具有相同内容(相同音频)视图的单元格。 有没有办法克服这个问题

override func setSelected(_ selected: Bool, animated: Bool) {
    super.setSelected(selected, animated: animated)
    // Configure the view for the selected state
    if selected {
        print("task has began")
    } else if !selected {
        print("task has finished")
    }
}    

结果将像苹果音乐或播客一样,应用程序中显示相同内容的手机将显示是否正在播放。

首先在xib中显示IBOutlet

class TableViewCell: UITableViewCell {

    @IBOutlet weak var generaV: UIView!
}

set Identifier  = TableViewCell
并在任意多个文件中调用Datasource方法,并在不同的VC中更改.red/.blue等颜色

调用ViewController中的单元格

     func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
                let cell = tableView.dequeueReusableCell(withIdentifier: "TableViewCell", for: indexPath) as! TableViewCell

               if (audioEnded){ 
cell.generaV.backgroundColor  = UIColor.green
}
                 else {
   cell.generaV.backgroundColor  = UIColor.red
}


                return cell
            }

谢谢你的回复。我想每个单元格的颜色都会改变,当音频结束时,我无法将其更改回来。我只需要在整个应用程序中更改内容相同的单元格。@David.P.JCHEN只需在顶部声明一个变量,并在完成后将其设置为true,然后重新加载单元格即可。无论何时更改视图颜色,都必须重新加载表。