我正在构建一个记录器应用程序,用户可以保存其记录。如何更改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
并在所需的多个文件中调用数据源方法,并在不同的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
}