没有来自colorWithRed的回复

时间:2013-09-19 10:06:32

标签: ios uitableview uicolor

我正在开发一个应用程序,我想更改表格单元格的导航栏标题和文本标签的字体颜色。

我正在使用以下代码片段来更改颜色

[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]];

但我面临的问题是上面的陈述没有颜色变化,而且我的一个单元格背景显示为白色。

3 个答案:

答案 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];