我正在创建一个UITable,我遇到的问题是,当我单击单元格内的按钮时,更改同一单元格内的标签。它同时针对两个细胞。
加载我使用的细胞时:
cell.AddtoFavorites.tag = indexPath.row
cell.AddtoFavorites.addTarget(self, action: #selector(AddtoFavorites(sender:)) , for: .touchUpInside)
然后在AddtoFavorites函数中:
let tag = sender.tag
let indexPath = IndexPath(row: tag, section: 0)
let cell = tableView.cellForRow(at: indexPath) as! TableViewCell!
cell?.ButtonText.text = "test"
我的问题是,当这个代码运行时为两个单元格执行它,比如我单击单元格1中的按钮,它会更改单元格1和单元格4中的文本(UILABEL)...所以它跳过两个细胞在时间。我一直坚持这个,我真的需要帮助。感谢所有帮助!
答案 0 :(得分:0)
我认为您的问题是将目标添加到cellForRowAtIndexPath中的按钮。在故事板中将操作从按钮设置为TableViewController,如Touch Up Inside。我还将标记值缓存在TableViewController中,重新加载整个表并根据缓存的值在cellForRow中设置文本值。