Add color to label, button, background using hexa code in IOS Application

Add color to the text field, labels, background, button text etc using the hexa color code as like in html.

Place the following function in the current viewController.m file

-(UIColor*)colorWithHexString:(NSString*)hex
{
    NSString *cString = [[hex stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] uppercaseString];
    
    // String should be 6 or 8 characters
    if ([cString length] < 6) return [UIColor grayColor];
    
    // strip 0X if it appears
    if ([cString hasPrefix:@"0X"]) cString = [cString substringFromIndex:2];
    
    if ([cString length] != 6) return  [UIColor grayColor];
    
    // Separate into r, g, b substrings
    NSRange range;
    range.location = 0;
    range.length = 2;
    NSString *rString = [cString substringWithRange:range];
    
    range.location = 2;
    NSString *gString = [cString substringWithRange:range];
    
    range.location = 4;
    NSString *bString = [cString substringWithRange:range];
    
    // Scan values
    unsigned int r, g, b;
    [[NSScanner scannerWithString:rString] scanHexInt:&r];
    [[NSScanner scannerWithString:gString] scanHexInt:&g];
    [[NSScanner scannerWithString:bString] scanHexInt:&b];
    
    return [UIColor colorWithRed:((float) r / 255.0f)
                           green:((float) g / 255.0f)
                            blue:((float) b / 255.0f)
                           alpha:1.0f];
}

Now call the function from the .m file to assign a color with the color code

[self colorWithHexString:@"FFFFFF"]

Now it will create a white color with the given hexa code.

To set the background color of the current view, Add the below code in the viewDidLoad function the .m file

self.view.backgroundColor=[self colorWithHexString:@"000000"];

Now the background will be black in color.

Similarly change background color of button. see below

[your_button setBackgroundColor:[self colorWithHexString:@"FFFFFF"]];

Now the button background will be white in color.

Similarly change text color of button. see below

[your_button setTitleColor:[self colorWithHexString:@"FFFFFF"] forState:UIControlStateNormal];

Now button text is white in color.

Sharing is caring!

Related Posts

Leave a Comment

shares