我正在开发一个应用程序,我想更改表格单元格的导航栏标题和文本标签的字体颜色。
我正在使用以下代码片段来更改颜色
[mantraLabel setTextColor:[UIColor colorWithRed:89 green:45 blue:15 alpha:1]];
并配置表格单元格如下,
NSString *cellValue = [mantra objectAtIndex:indexPath.row];
mantraLabel.backgroundColor=[UIColor clearColor];
mantraLabel=[[UILabel alloc]initWithFrame:CGRectMake(60,4,200,44)];
mantraLabel.text=cellValue;
[mantraLabel setBaselineAdjustment:UIBaselineAdjustmentAlignCenters];
[mantraLabel setFont:[UIFont fontWithName:@"Marathi-Vakra" size:21.0]];
[cell addSubview:mantraLabel];
[mantraLabel setTextColor:[UIColor colorWithRed:89 green:45 blue:15 alpha:1]];
但我面临的问题是上面的陈述没有颜色变化,而且我的一个单元格背景显示为白色。
答案 0 :(得分:3)
纠正这一行
[mantraLabel setTextColor:[UIColor colorWithRed:89 green:45 blue:15 alpha:1]];
与
[mantraLabel setTextColor:[UIColor colorWithRed:89/255.0 green:45/255.0 blue:15/255.0 alpha:1]];
您的颜色在 0.0到1.0 的范围内。我们几乎不用这种方式来指定颜色。因此,为了指定此范围内的颜色,我们需要将其除以255.0
答案 1 :(得分:0)
替换
[cell addSubview:mantraLabel];
[mantraLabel setTextColor:[UIColor colorWithRed:89 green:45 blue:15 alpha:1]];
使用
[mantraLabel setTextColor:[UIColor colorWithRed:89/255.0f green:45/255.0f blue:15/255.0f alpha:1]];
[cell addSubview:mantraLabel];
设置颜色后添加标签
答案 2 :(得分:0)
函数colorWithRed:green:blue:alpha
基于1。
即。 89 = 0.349 ......(89/255)
你应该使用......
[UIColor colorWithRed:0.349 green:0.176 blue:0.058 alpha:1.0];