为什么[cell.detailTextLabel setBackgroundColor:[UIColor blackColor]];不行?

时间:2010-10-21 09:08:25

标签: iphone uitableview detailtextlabel

[cell.detailTextLabel setBackgroundColor:[UIColor blackColor]];

不起作用。有什么方法可以使它发挥作用吗?

由于

3 个答案:

答案 0 :(得分:1)

UITableViewCell textLabeldetailTextLabel都不像普通UILabel那样行事。这可能是因为UITableViewCell为了性能原因而绘制文本而不是使用UILabel。这会导致行为不一致,因为单元格的绘图会忽略backgroundColor属性。

如果您所需的功能符合Apple工程师设计为由默认单元格处理的功能,请坚持使用默认UITableViewCell。对于所有其他功能,请创建自己的UITableViewCell子类。

答案 1 :(得分:0)

在表视图委托方法

中设置它
- (void)tableView: (UITableView*)tableView   willDisplayCell: (UITableViewCell*)cell forRowAtIndexPath: (NSIndexPath*)indexPath {
[cell.detailTextLabel setBackgroundColor:[UIColor blackColor]];

}

答案 2 :(得分:-3)

cell.detailTextLabel.textColor = [UIColor blackColor];