1

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

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

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

但我面临的问题是上述声明没有颜色变化,而且我的一个单元格背景也出现在白色。

4

3 回答 3

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 来划分它

于 2013-09-19T10:07:43.030 回答
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];

设置颜色后添加标签

于 2013-09-19T10:08:09.593 回答
0

该函数colorWithRed:green:blue:alpha是基于 1 的。

即 89 = 0.349 ... (89/255)

你应该使用...

[UIColor colorWithRed:0.349 green:0.176 blue:0.058 alpha:1.0];
于 2013-09-19T10:08:48.857 回答