Colorkit 是 UIColor 类的扩展。它为您在 iOS 项目中创建和操作颜色提供了更多方法。
要运行示例项目,请克隆仓库,然后首先从 Example 目录运行 pod install
。
使用 Cocoapod
Colorkit 可通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile 中:
pod "Colorkit"
使用简单方法
将 Colorkit.h 和 Colorkit.m 文件拖放到您的项目中。别忘了将文件导入到您的项目中
#import "Colorkit.h"
+(instancetype)colorWithHexString:(NSString *)hexString
使用十六进制字符串创建一个颜色 @"#FF0000", @"#F00", @"FF0000", @"F00"
UIColor *redColor = [UIColor colorWithHexString:@"#FF0000"];
UIColor *backgroundColor = [UIColor colorWithHexString:@"35A"];
+(instancetype)colorWithHexString:(NSString *)hexString alpha:(CGFloat)alpha
与上面相同,但带有 Alpha 值(0-1)
UIColor *redColor = [UIColor colorWithHexString:@"#FF0000" alpha:0.5];
+(instancetype)colorWithRGB:(NSArray *)rgbArray
使用类似 @[@255,@120,@43] 的 rgb 值数组创建一个颜色
UIColor *redColor = [UIColor colorWithRGB:@[@255, @0, @0]];
+(instancetype)colorWithRGBA:(NSArray *)rgbaArray
使用类似 @[@255,@120, @43, @0.5] 的 rgba 值数组创建一个颜色
UIColor *redColor = [UIColor colorWithRGB:@[@255, @0, @0, @1]];
+(instancetype)colorWithHSB:(NSArray *)hsbArray
使用类似 @[@360,@80,@54] 的 hsb 值数组创建一个颜色
UIColor *redColor = [UIColor colorWithHSB:@[@0, @100, @100]];
+(instancetype)colorWithHSBA:(JSONArray *)hsbaArray
使用类似 @[@360,@80,@54,@0.5] 的 hsba 值数组创建一个颜色
UIColor *redColor = [UIColor colorWithHSB:@[@0, @100, @100, @1]];
-(NSString *)getHexString
从颜色获取十六进制字符串
[redColor getHexString];
// @"#FF0000"
-(NSArray *)getRGBAArray
从颜色获取 RGBA 数字数组
[redColor getRGBAArray];
// @[@255, @0, @0, @1]
-(JSONArray *)getHSBAArray
从颜色获取 HSBA 数字数组
[redColor getHSBAArray];
// @[@360, @100, @100, @1]
-(CGFloat)getRed
获取颜色的红值
[redColor getRed];
// 255.0
-(CGFloat)getGreen
获取颜色的绿值
[redColor getGreen];
// 0.0
-(CGFloat)getBlue
获取颜色的蓝值
[redColor getBlue];
// 0.0
-(CGFloat)getHue
获取颜色的色调值
[redColor getHue];
// 360.0
-(CGFloat)getSaturation
获取颜色的饱和度值
[redColor getSaturation];
// 100.0
-(CGFloat)getBrightness
获取颜色的亮度值
[redColor getBrightness];
// 100.0
-(CGFloat)getAlpha
获取颜色的 Alpha 值
[redColor getAlpha];
// 1.0
-(instancetype)saturateColor:(CGFloat)amount
按百分比值饱和颜色
[baseColor saturateColor:20.0];
-(instancetype)desaturateColor:(CGFloat)amount
按百分比值去除颜色饱和度
[baseColor desaturateColor:20.0];
// == [baseColor saturateColor:-20.0];
-(instancetype)lightenColor:(CGFloat)amount
按百分比值照亮颜色
[baseColor lightenColor:20.0];
-(instancetype)darkenColor:(CGFloat)amount
按百分比值饱和颜色
[baseColor darkenColor:20.0];
-(instancetype)spinColor:(CGFloat)angle
按度数值旋转颜色
[baseColor spinColor:120.0];
-(instancetype)greyscaleColor
返回去饱和度的颜色。等同于 desaturateColor:100
[baseColor greyscaleColor];
+(instancetype)blendingColorsWithMultiply:(id)firstColor secondColor:(id)secondColor
使用乘法混合两种颜色
[blendingColorsWithMultiply:[UIColor red] secondColor:[UIColor blue]];
+(typeidendid)blendingColorsWithScreen:(id)firstColor secondColor:(id)secondColor
使用叠加混合两种颜色
[blendingColorsWithScreen:[UIColor red] secondColor:[UIColor blue]];
+(instancetype)blendingColorsWithOverlay:(id)firstColor secondColor:(id)secondColor
使用叠加混合两种颜色
[blendingColorsWithOverlay:[UIColor red] secondColor:[UIColor blue]];
+(instancetype)blendingColorsWithSoftlight:(id)firstColor secondColor:(id)secondColor
使用柔和光照混合两种颜色
[blendingColorsWithSoftlight:[UIColor red] secondColor:[UIColor blue]];
+(instancetype)blendingColorsWithHardlight:(id)firstColor secondColor:(id)secondColor
使用硬光照混合两种颜色
[blendingColorsWithHardlight:[UIColor red] secondColor:[UIColor blue]];
+(instancetype)blendingColorsWithDifference:(id)firstColor secondColor:(id)secondColor
使用对比度混合两种颜色
[blendingColorsWithDifference:[UIColor red] secondColor:[UIColor blue]];
+(instancetype)blendingColorsWithExclusion:(id)firstColor secondColor:(id)secondColor
使用排除法混合两种颜色
[blendingColorsWithExclusion:[UIColor red] secondColor:[UIColor blue]];
pixelslip, [email protected]
Colorkit 可在 MIT 许可下获取。更多信息请参阅 LICENSE 文件。