有没有办法更改表格视图中所有单元格中文本的颜色?我之前看过这个,它只讨论了改变一个单元格的文本颜色的方法。我的应用程序没有一定数量的单元格,所以这不起作用。
答案 0 :(得分:5)
在:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
执行:
cell.textLabel.textColor = [UIColor greenColor];
答案 1 :(得分:1)
您可以使用UITableViewCell的textLabel
属性执行此操作。但是你不能改变textLabel的框架大小。
cell.textLabel.textColor = [UIColor blackColor];
要更改帧大小和内容,您需要创建一个UILabel
并为其指定正确的帧,颜色和文本,然后将其添加为SubView。
[cell.contentView addSubview: myLabel];
对于这种方法,请务必注意可重用性问题(您需要继承UITableViewCells
并创建CustomUITableViewCells
)。
答案 2 :(得分:1)
您可以通过以下两种方式之一完成此操作:
实现自定义UITableViewCell子类,将标签的textColor设置为所需的颜色。
在cellForRowAtIndexPath中更改textColor。只需在返回单元格之前的某处插入以下代码;
cell.textLabel.textColor = [UIColor redColor];
答案 3 :(得分:0)
如果要避免委托方法,并动态更改可见行...
试试这个:
NSEnumerator *e = [[self.tableView indexPathsForVisibleRows] objectEnumerator];
id object;
while (object = [e nextObject]) {
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:object];
cell.textLabel.textColor = [UIColor grayColor];
}
像魅力一样。