我有一个tableview,当我选择一个单元格时,我正在更改该单元格的背景组颜色以识别所选行。
我的问题是:当我选择下一行时,我正在重新加载表格视图,此时我无法更改该单元格的背景颜色。
我在cellForRowAtIndexPath:
方法中编写了以下代码:
if (m_selectedCell == indexPath.row) {
[cell setBackgroundColor:[UIColor redColor]];
}
有人可以帮忙吗?
答案 0 :(得分:2)
必须在-tableView:willDisplayCell:forRowAtIndexPath:
委托方法中执行更改单元格的背景颜色。在创建单元格之后,但在屏幕上绘制之前发送此消息。
答案 1 :(得分:1)
您在cellForRowAtIndex方法中编写此代码:
[cell setSelectionStyle:UITableViewCellSelectionStyleBlue];
答案 2 :(得分:1)
在返回单元格之前编写代码。并检查m_selectedCell分配或nil?
如果值匹配,则在单元格中添加带背景颜色的UIImageView。
答案 3 :(得分:1)
也许你可以试试这个
cell.textLabel.backgroundColor = [UIColor clearColor];
答案 4 :(得分:0)
您在DidSelectRowIndexPath本身中尝试此代码。
if (m_selectedCell == indexPath.row) {
[cell setBackgroundColor:[UIColor redColor]];
}
答案 5 :(得分:0)
您必须在此循环中编写名为if(cell==nil)