ios - 更改 UITableViewCell 中 UILabel 的背景颜色

标签 ios objective-c cocoa-touch

一个 UITableViewCell 是“预构建”的,在你初始化它之后,一个 UILabel 作为它的一个也是唯一的 subview 。我真的想更改所述标签的背景颜色,但无论我做什么,颜色都不会改变。有问题的代码:

UILabel* label = (UILabel*)[cell.contentView.subviews objectAtIndex:0];
label.textColor = [UIColor whiteColor];
label.backgroundColor = [UIColor darkGrayColor];
label.opaque = YES;

最佳答案

您的代码片段对我来说工作正常,但我相信必须在将单元格添加到表格并显示之后完成。如果从 initWithFrame:reuseIdentifier: 调用,您将得到一个异常,因为 UILabel subview 尚未创建。

可能最好的解决方案是添加您自己的 UILabel,根据您的标准进行配置,而不是依赖这个(非常不稳定的)通往内置路径的路径。

关于ios - 更改 UITableViewCell 中 UILabel 的背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/222652/

相关文章:

objective-c - 从 NSOutlineView 检索单元格内容

ios - 动态设置导航 Controller 标题

ios - 使用UIActivityViewController发送音频

ios - 为什么 EmptyView() 不能在带有 SwiftUI 的 WatchOS 上运行?

ios - 如何在 Swift 的类级别制作一组 UIImageViews?

javascript - Cordova 闹钟

Objective-C block "retain cycle"警告,不明白为什么

iphone - 细节披露按钮和 Segues

iphone - 使用 UICollectionViewFlowLayout 在 UICollectionView 的第一项上进行左填充

iphone - cocos2d-iphone Sprite 表加载