ios - 更改 UITableView 中几个选定的表格 View 单元格文本的颜色

标签 ios swift uitableview

我有一个包含 8 个单元格的表格 View 。每个都包含一个标签。对于最后 4 个单元格,我希望标签的文本属性具有蓝色。对于前四个单元格,我希望它们具有黑色。

我使用以下代码在 cellForRowAt indexPath 中将文本颜色设置为蓝色:

if indexPath.row > 4 {
    cell.label.textColor = UIColor.blue
}

这会将颜色更改为蓝色,但是当用户向下滚动然后再次向上滚动时,前两个单元格标签也具有蓝色,因为单元格被重复使用了。

我该如何解决这个问题?谢谢。

最佳答案

由于出队问题或 Cell 重用问题,您必须将 else 部分添加到您的 cellForRow 方法中。

cell.label.textColor = indexPath.row > 4 ? .blue : .black

Note: Always remember to add else part into cellForRow Method, Otherwise it behaves weirdly.

关于ios - 更改 UITableView 中几个选定的表格 View 单元格文本的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54253788/

相关文章:

ios - sectionHeader 中的自动调整字体大小

ios - 尝试在 iOS 中使用 AVAssetDownloadURLSession 下载 m3u8 视频时出错

ios - 在显示 View 之前根据特定宽度获取 UIView 的高度

使用数据进行 Swift 反向地理编码

ios - UITableView reloadRowsAtIndexPaths 图形故障

iphone - 有时在调用 reloadData 时调用 numberOfRowsInSection 后不会调用 cellForRowAtIndexPath

ios - 找不到托管对象模型

iphone - 重复使用UIControl子类和IB中的设计

ios - 当我运行应用程序时,我的 TableView 崩溃了

ios - 解析 : Xcode 6. 3.1 在 OS X El Capitan 上运行错误 "cannot load module parse as parse"