无法在iOS6中设置UITableViewCell的背景颜色?

 临临临峰_547 发布于 2023-02-12 21:28

我开始在模拟器下测试我的应用程序,因为我没有任何iOS 6设备,偶然发现了奇怪的问题.我无法设置UITableViewCell的backgroundColor属性.如果我这样:

cell.contentView.backgroundColor = [UIColor redColor];

它只适用于iOS 6,当我使用它时:

cell.backgroundColor = [UIColor redColor];

或这个

[cell setBackgroundColor:[UIColor redColor]];

它仅适用于iOS7.

当我使用它们cell.contentView并且cell.backgroundColor它适用于iOS时......对于这样一个"简单"的属性,它不应该是一个答案吗?或者也许是一些模拟器错误?

更新:如果它改变了同一个tableview和单元格中的任何内容,我accessoryType既不能通过StoryBoard也不能设置代码......

更新2:由于某种原因设置tableview样式为plain删除了我的所有更改,但分组显示为预期...

2 个回答
  • 在iOS6中,您需要在willDisplayCell中更改单元格的backgroundColor.这也适用于iOS7,无需特定于版本的代码.

    - (void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
        [cell setBackgroundColor:[UIColor redColor]];
    }
    

    2023-02-12 21:33 回答
  • 我没有看到将contentView AND的背景设置为单元格的问题.iOS 7已经改变了很多这个类.如果您需要与旧系统兼容,那么您需要执行此类操作.

    所以是的,你应该同时使用:

    cell.contentView.backgroundColor
    cell.backgroundColor
    

    2023-02-12 21:35 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有