我正在尝试过去几个小时来弄清楚如何做到这一点,但没有运气。在搜索Google时,有几种可能的解决方案,但似乎没有任何效果。
我正在尝试自定义UITableViewCell中标准UILabel的背景颜色(因为我已经自定义了单元格本身的背景颜色),但我所做的一切似乎都无法正常工作。
我正在创建自己的UILabel来自定义-tableView中的颜色:cellForRowAtIndexPath:
UILabel* label = [[[UILabel alloc] init] autorelease];
label.textColor = [UIColor blueColor];
label.backgroundColor = [UIColor redColor];
label.opaque = YES;
[cell.contentView addSubview:label];
cell.text = @"Sample text here";
但是这不起作用,结果表视图仍然有一堆单元格,标签中有黑色文字和白色背景。
我在这里做错了什么线索?
更新:如果我尝试执行以下操作:
UILabel* label = [[[UILabel alloc] init] autorelease];
label.textColor = [UIColor blueColor];
label.backgroundColor = [UIColor redColor];
label.opaque = YES;
[cell.contentView addSubview:label];
label.text = @"Sample text here";
我得到了一堆没有文字的UITableViewCells。
答案 0 :(得分:1)
您似乎将文本分配给单元格而不是标签。你可能想要:
label.text = @"Sample text here";
此外,您需要将标签的框架设置为您需要的框架:
label.frame = CGRectMake(10,10, 80, 40);
或直接在构造函数中:
label = [[UILabel alloc] initWithFrame:myFrame];
答案 1 :(得分:0)
我不会在代码中这样做。我会使用自定义XIB文件,然后将其加载到您的
中- (UITableViewCell *)tableView:(UITableView *)tv cellForRowAtIndexPath:(NSIndexPath *)indexPath
委托功能。这样您就可以将XIB文件设计为您的确切规格,并进行调整。
祝你好运!答案 2 :(得分:0)
您之前已经提出过这个问题,并收到了正确答案;