从 NSString 分配给 'UIColor' 的不兼容指针类型

Incompatible pointer types assigning to 'UIColor' from NSString

请检查下面的代码部分并帮助我解决警告..

theGraphSubDataObj2.subDataColor = [self hexStringFromColor:[clrDic valueForKey:key]] ;

    - (NSString *)hexStringFromColor:(UIColor *)color {
    const CGFloat *components = CGColorGetComponents(color.CGColor);

    CGFloat r = components[0];
    CGFloat g = components[1];
    CGFloat b = components[2];

    return [NSString stringWithFormat:@"#%02lX%02lX%02lX",
            lroundf(r * 255),
            lroundf(g * 255),
            lroundf(b * 255)];
}

只需更改以下代码行

theGraphSubDataObj2.subDataColor = [clrDic objectForKey:key] ;

因为 [clrDic valueForKey:key] returns UIColor 和 subDataColor 对象也是 UIColor 那么我们可以分配。

您正在将 NSString[self hexStringFromColor:[clrDic valueForKey:key]])分配给 UIColor(对象的子数据颜色)