iOS16进制设置颜色

UIColor+Hex.h

//
//  UIColor+Hex.h
//  16进制颜色类别
//
//  Created by apple on 15-4-3.
//  Copyright (c) 2015年 apple. All rights reserved.
//

#import <UIKit/UIKit.h>

#define RGBA_COLOR(R, G, B, A) [UIColor colorWithRed:((R) / 255.0f) green:((G) / 255.0f) blue:((B) / 255.0f) alpha:A]
#define RGB_COLOR(R, G, B) [UIColor colorWithRed:((R) / 255.0f) green:((G) / 255.0f) blue:((B) / 255.0f) alpha:1.0f]

@interface UIColor (Hex)

+ (UIColor *)colorWithHexString:(NSString *)color;

//从十六进制字符串获取颜色,
//color:支持@“#123456”、 @“0X123456”、 @“123456”三种格式
+ (UIColor *)colorWithHexString:(NSString *)color alpha:(CGFloat)alpha;

@end

UIColor+Hex.m

//
//  UIColor+Hex.m
//  16进制颜色类别
//
//  Created by apple on 15-4-3.
//  Copyright (c) 2015年 apple. All rights reserved.
//

#import "UIColor+Hex.h"

@implementation UIColor (Hex)
+ (UIColor *)colorWithHexString:(NSString *)color alpha:(CGFloat)alpha
{
    //删除字符串中的空格
    NSString *cString = [[color stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] uppercaseString];
    // String should be 6 or 8 characters
    if ([cString length] < 6)
    {
        return [UIColor clearColor];
    }
    // strip 0X if it appears
    //如果是0x开头的,那么截取字符串,字符串从索引为2的位置开始,一直到末尾
    if ([cString hasPrefix:@"0X"])
    {
        cString = [cString substringFromIndex:2];
    }
    //如果是#开头的,那么截取字符串,字符串从索引为1的位置开始,一直到末尾
    if ([cString hasPrefix:@"#"])
    {
        cString = [cString substringFromIndex:1];
    }
    if ([cString length] != 6)
    {
        return [UIColor clearColor];
    }

    // Separate into r, g, b substrings
    NSRange range;
    range.location = 0;
    range.length = 2;
    //r
    NSString *rString = [cString substringWithRange:range];
    //g
    range.location = 2;
    NSString *gString = [cString substringWithRange:range];
    //b
    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:alpha];
}

//默认alpha值为1
+ (UIColor *)colorWithHexString:(NSString *)color
{
    return [self colorWithHexString:color alpha:1.0f];
}

@end
时间: 2024-10-20 07:31:06

iOS16进制设置颜色的相关文章

iOS16进制RGB值转换成UIColor

本博客特此感谢小汪同学的大力支持 用 PS  取色   可以 看到 RGB,然后 用这个 方法 就可以得到颜色了 文件下载:下载地址 iOS16进制RGB值转换成UIColor

16进制的颜色怎么转换为我们iOS所用的RGB颜色

这个我们就是可以直接宏定义到 我们的工程中,这样我们就可以用我们UI小妹,给我们16进制的颜色表示,愉快的编程了... #define UIColorFromRGB(rgbValue) [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 green:((float)((rgbValue & 0xFF00) >> 8))/255.0 blue:((float)(rgbValue &

[iOS]把16进制(#871f78)颜色转换UIColor

// // ViewController.m // text // // Created by 李东旭 on 16/1/22. // Copyright © 2016年 李东旭. All rights reserved. // #import <UIKit/UIKit.h> #import "ViewController.h" // 定义个宏,方便实用,>> 16 的意思是把16进制转换成2进制后,右移16位(移动掉的直接舍弃) #define UIColorF

iOS --- UIColor中使用16进制选取颜色

iOS中的UIColor可以使用16进制来选取颜色. 预先定义如下: #define UIColorFromHex(s) [UIColor colorWithRed:(((s & 0xFF0000) >> 16))/255.0 green:(((s & 0xFF00) >> 8))/255.0 blue:((s & 0xFF))/255.0 alpha:1.0] 使用方法: view.backgroundColor = UIColorFromHex(0xdc

object-c将RGB颜色转换成16进制HTML颜色

-(void)color:(NSString *) red andGreen:(NSString*) green andBule:(NSString*) bule{ NSInteger Red = [red integerValue]; NSInteger Green = [green integerValue]; NSInteger Bule = [bule integerValue]; NSInteger colorsize = Red<<16 | Green << 8 | B

UIColor设置RGB颜色16颜色进制的做法-使用storyboard和代码实现

如何使用代码和storyboard设置 颜色为16进制的? 我们在做真是的项目时常常是美工给我做好 效果图,标尺图我们再来 写UI的,当然这些标尺图中也包括 设置 颜色,一般美工给你的 颜色是 一个  RGB (124,123,124)类似的额 RGB 的颜色或者  FFFFFF  16进制的颜色,我们需要按照美工的要求去设置 这个颜色; 当然 最好的方法是使用storyboard来设置,最简答,最强大,省事! 如何设置? 看图: 如图,给一个label,点击红色框之内的,可以设置任意的 颜色

C# RGB与16进制颜色转换方法

http://www.cnblogs.com/goldarch/archive/2010/08/16/1801053.html #region [颜色:16进制转成RGB]        /// <summary>        /// [颜色:16进制转成RGB]        /// </summary>        /// <param name="strColor">设置16进制颜色 [返回RGB]</param>       

纯js实现颜色16进制到rgb格式

// 利用parseInt 和 slice  toString将16进制颜色转成rgb格式 // 思路:将16进制的颜色从下标1开始,利用slice方法,每隔两位取出 var div1 = document.querySelector("div"); var color = "#ab0000"; var str="rgb(" var r = parseInt(color.slice(1,3),16).toString();   //ff  sli

iOS开发时间戳与时间NSDate,时区的转换,汉字与UTF8,16进制的转换

http://blog.sina.com.cn/s/blog_68661bd80101njdo.html 标签: ios时间戳 ios开发时间戳 ios16进制转中文 ios开发utf8转中文 ios汉字转utf8和16进   //获取当前系统的时间戳+(long)getTimeSp{    long time;    NSDate *fromdate=[NSDate date];    time=(long)[fromdate timeIntervalSince1970];    return