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

最新文章

  1. MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记
  2. (原创)JAVA多线程一传统多线程
  3. Charles V4系列更新 | 绿色特别版 | 视频教程
  4. GPU---并行计算利器
  5. paip.不同目录结构哈的文件批量比较
  6. ubuntu搭建lamp环境
  7. mysql封装类
  8. Android开发面试经——6.常见面试官提问Android题②(更新中...)
  9. hadoop问题锦集(一):mapreduce不能在集群中运行
  10. 安装Python+Pywin32(version 3.3)
  11. BZOJ 3203 sdoi 2013 保护出题人
  12. Lucene学习总结之八:Lucene的查询语法,JavaCC及QueryParser
  13. swift http请求返回json数据和分析
  14. D - 1sting(相当于斐波那契数列,用大数写)
  15. Resource is out of sync with the file system: 解决办法
  16. 【实验室笔记】zedgraph控件属性总结
  17. geoserver集成以及部署arcgis server瓦片数据
  18. Centos下部署Flask
  19. 通用Logging框架设计
  20. 关于springboot整合配置pagehelper插件的方法

热门文章

  1. Android Studio将Eclipse的项目作为module的依赖库
  2. Ubuntu14.04中踩过的坑
  3. C#调用天气预报网络服务
  4. Mybatis的使用中的一些不太注意的技巧
  5. 参数传递方法(用Delphi的汇编代码解释)
  6. POJ 2983 Is the Information Reliable? 依旧差分约束
  7. 11.1 Android显示系统框架_framebuffer原理及改进
  8. 【例题 6-2 UVA - 514】Rails
  9. swift项目第九天:正则表达式的学习
  10. swift学习第十一天:类的定义