I need to convert UIColor to an NSString of the color name.
UIColor
NSString
I tried:
NSString *colorString = NSStringFromClass([[UIColor redColor] class]);
But colorString did not give @"redColor".
colorString
The CIColor class contains color values and the color space for which the color values are valid.
CIColor
https://developer.apple.com/documentation/coreimage/cicolor
// UIColor to NSString CGColorRef colorRef = [UIColor grayColor].CGColor; NSString *colorString = [CIColor colorWithCGColor:colorRef].stringRepresentation;
// NSString to UIColor CIColor *coreColor = [CIColor colorWithString:@"0.5 0.5 0.5 1.0"]; UIColor *color = [UIColor colorWithCIColor:coreColor];
-----------------Warning-----------
If You Want Support All Devices The Way Mentioned Above to Convert NSString to UIColor Will Not Work On All Devices.
stringRepresentation
Returns a formatted string that specifies the components of the color.
The string representation always has four components—red, green, blue, and alpha.
https://developer.apple.com/documentation/coreimage/cicolor/1437910-stringrepresentation
colorWithString:
Creates a color object using the RGBA color component values specified by a string.
https://developer.apple.com/documentation/coreimage/cicolor/1438059-colorwithstring
1.4m articles
1.4m replys
5 comments
57.0k users