MHHexColoring为开发者快速获取想要的十六进制颜色(Hex Color)

查找16进制色码的网站:http://www.color-hex.com

// 版权属于原作者 MHHexColoring

http://code4app.com/ios/MHHexColoring/548e9485933bf0a9738b6301

1、使用方法:

加入UIColor+HexString.h/m文件,导入头文件:
#import "UIColor+HexString.h"

获取颜色,返回UIColor:
[UIColor colorWithHexString:@"#ffffff"];

2、 UIColor+HexString.h

//  UIColor+HexString.h

//  shopbox

//

//  Created by Mohamed Hegab on 10/2/14.

//  Copyright (c) 2014 The Dark Dimension. All rights reserved.

//

#import <UIKit/UIKit.h>

@interface UIColor (HexString)

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

@end

3、 UIColor+HexString.m

#import "UIColor+HexString.h"

@implementation UIColor (HexString)

+ (CGFloat) colorComponentFrom: (NSString *) string start: (NSUInteger) start length: (NSUInteger) length {

NSString *substring = [string substringWithRange: NSMakeRange(start, length)];

NSString *fullHex = length == 2 ? substring : [NSString stringWithFormat: @"%@%@", substring, substring];

unsigned hexComponent;

[[NSScanner scannerWithString: fullHex] scanHexInt: &hexComponent];

return hexComponent / 255.0;

}

+ (UIColor *) colorWithHexString: (NSString *) hexString {

NSString *colorString = [[hexString stringByReplacingOccurrencesOfString: @"#" withString: @""] uppercaseString];

CGFloat alpha, red, blue, green;

switch ([colorString length]) {

case 3: // #RGB

alpha = 1.0f;

red   = [self colorComponentFrom: colorString start: 0 length: 1];

green = [self colorComponentFrom: colorString start: 1 length: 1];

blue  = [self colorComponentFrom: colorString start: 2 length: 1];

break;

case 4: // #ARGB

alpha = [self colorComponentFrom: colorString start: 0 length: 1];

red   = [self colorComponentFrom: colorString start: 1 length: 1];

green = [self colorComponentFrom: colorString start: 2 length: 1];

blue  = [self colorComponentFrom: colorString start: 3 length: 1];

break;

case 6: // #RRGGBB

alpha = 1.0f;

red   = [self colorComponentFrom: colorString start: 0 length: 2];

green = [self colorComponentFrom: colorString start: 2 length: 2];

blue  = [self colorComponentFrom: colorString start: 4 length: 2];

break;

case 8: // #AARRGGBB

alpha = [self colorComponentFrom: colorString start: 0 length: 2];

red   = [self colorComponentFrom: colorString start: 2 length: 2];

green = [self colorComponentFrom: colorString start: 4 length: 2];

blue  = [self colorComponentFrom: colorString start: 6 length: 2];

break;

default:

return nil;

}

return [UIColor colorWithRed: red green: green blue: blue alpha: alpha];

}

@end

颜色转换:#hhhfff->UIColor (MHHexColoring)的更多相关文章

  1. UIColor各种颜色转换

    1.Hex值颜色转换 #import <UIKit/UIKit.h> @interface UIColor (Extension) // 根据无符号的32位整数转换为对应的RGB颜色 + ...

  2. iOS中RGB颜色转换

    iOS中RGB常用的色值,同时可将对颜色的设置定义成宏,方便开发应用,如: // RGB颜色转换(16进制->10进制) #define UIColorFromRGB(rgbValue) [UI ...

  3. iOS开发-16进制颜色转换

    项目中经常会用到颜色转换,有的是通过十六进制转成数字转颜色,想简单的点直接通过字符串转一下,简单扩展了一下分类UIColor,代码如下: +(UIColor *)colorWithHex:(NSStr ...

  4. js颜色转换

    很久之前面试遇到过一个题.写个颜色转换的方法. function RGB2Color(r,g,b) { return '#' + byte2Hex(r) + byte2Hex(g) + byte2He ...

  5. C语言颜色转换宏

    C语言颜色转换宏 #define COLOR_BPP16_RGB555 /* Win RGB */ #define COLOR_RGB(r,g,b) ((COLORREF)(((BYTE)(r)|(( ...

  6. OpenCV颜色转换和皮肤检测

    本笔记重点记录OpenCV中的颜色转换和利用色彩空间的特性进行皮肤检测 颜色转换 实现原理 之所以要引入色调/饱和度/亮度的色彩空间概念,是因为人们喜欢凭直觉分辨各种颜色,而它与这种方式吻合.实际上, ...

  7. IOS 十六进制字符串转换成UIColor

    /** * 十六进制转换成UIColor * * @param stringToConvert 十六进制字符串 * * @return UIColor */ +(UIColor *) hexStrin ...

  8. iOS 从各种效果图颜色标注生成 UIColor

    iOS 从各种效果图颜色标注生成 UIColor 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公 ...

  9. 颜色转换、随机、16进制转换、HSV

    颜色转换.随机.16进制转换.HSV: /** * * *-----------------------------------------* * | *** 颜色转换.随机.16进制转换.HSV * ...

随机推荐

  1. web前端背景介绍

    Internet:是一个全球性的计算机互联网络,中文名称“因特网”.“国际互联网”.“网际网”等等: Internet提供的服务:http.ftp.Telnet.email.www.bbs等等: 基本 ...

  2. 忍者无敌-实例解说Cocos2d-x瓦片地图

    实例比較简单,如图所看到的,地图上有一个忍者精灵,玩家点击他周围的上.下.左.右,他能够向这个方向行走. 当他遇到障碍物后是无法穿越的,障碍物是除了草地以为部分,包含了:树.山.河流等. 忍者实例地图 ...

  3. 【微信】微信获取TOKEN,以及储存TOKEN方法,Spring quartz让Token永只是期

    官网说明 access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token.开发人员须要进行妥善保存. access_token的存储至少要保留512个字符空间.ac ...

  4. c++中的相对路径

           今天在vs2010里读取相对路径下的图片文件出了点问题.于是查了一下相对路径的编程知识,记录下来分享给大家:      问题描写叙述:path=".\\TrainData\\& ...

  5. 学习笔记:TypeScript入门——基础类型

    前言: TypeScript官网断断续续看过几遍,不知道项目中如何使用,有机会还是要实践一下.现在再把文档上不懂的知识点理一遍. 基础类型 1.什么是元组Tuple? 元组类型允许表示一个已知元素数量 ...

  6. 2015,我的投资理财策略(股权众筹+P2P网贷+活期理财)

    纸币流行,尤其是当今中国的市场经济,纸币几乎是一直是贬值的,每个人的财富都在被不断地稀释,可能是被政府.如果你不注意保值增值,你就越来越穷.     当年的万元户,在今天看来就是一个笑话,其实不怎么好 ...

  7. 2019年Angular7——安装搭建路由

    Angular 中文官方:https://www.angular.cn/ 为什么要看Angular?我也不知道,因为公司有个Angular的项目要维护.听说Angular的版本已经到7了.以前没怎么玩 ...

  8. cmake配置c++可调用的文件路径参数

    一.目的 在程序中使用一个路径配置,因为在svn服务器的测试数据,测试数据成为了本地路径,在程序中使用了绝对路径来处理文件的输入,这个令人头疼啊. 每次下完代码,我得挨个地方去找,谁在用本地路径,有点 ...

  9. [WASM] Create and Run a Native WebAssembly Function

    In this introduction, we show a simple WebAssembly function that returns the square root of a number ...

  10. 一次性能优化将filter转换

    有一条SQL性能有问题,在运行计划中发现filter.遇到它要小心了,类似于nestloop.我曾经的blog对它有研究探索运行计划中filter的原理.用exists极易引起filter. 优化前: ...