swift - 当我滚动时,TableView DidSelectRowAt 将更改其他单元格的背景颜色
问题描述
我有一个 TableView 有时有足够的单元格允许我滚动表格。同时我已经设置了我的 didSelectRow 来切换单元格的背景颜色。似乎在选择了几个然后向下滚动后,我发现更多的单元格已超出我的控制范围。
这是我的 didSelectRowAt:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
packSizesTableView.cellForRow(at: indexPath)?.backgroundColor = UIColor.yellow
packList[indexPath.row].picked = true
pickedRows.append(indexPath)
除了更改 indexPath.row 的颜色之外,还有其他方法可以选择我的表格单元格吗?
解决方案
您可以在 cellForRowAt 方法中设置单元格颜色,如下所示:-
If packList[indexPath.row].picked {
yourCell.backgroundColor = UIColor.yellow
} else {
yourCell.backgroundColor = UIColor.red
}
推荐阅读
- postgresql - JPQL:如何将行用作存储函数调用的参数?
- python - 如何使用 python 代码调整图像大小?
- c++ - 删除读/写互斥锁的读卡器锁有什么意义?
- wikipedia-api - 获得语言翻译最少的随机帖子
- c# - 根据官方文档,Asp.net Core 3.0 CORS 无法正常工作
- javascript - 在 react/html 的输入框中看不到输入
- java - 使用 faker 生成 java 姓氏,但只需要字母
- angular - Angular - 使用 ng5-slider 进行单元测试
- svn - 如何在提交到主干之前合并来自两个分支的更改并进行测试?
- amazon-web-services - 从同一区域但不同帐户的 S3 存储桶读取需要多少费用