很棒 1.2.1

Wonderful 1.2.1

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2017年1月

dsxNiubility 维护。



Wonderful 1.2.1

  • 作者:
  • 董尚先

一个关于色彩的库

image



演示程序截图

建议使用iPhone6运行演示程序
Drawing

一、UIColor+Wonderful

1.在这个分类中增加了更多的颜色扩展,以后写小Demo时再也不需要redColor和blueColor了。

    self.view.backgroundColor = [UIColor khakiColor];
    self.view.backgroundColor = [UIColor chocolateColor];

2.每个色系平均有10种颜色,可以直接通过名称敲出,也可以通过颜色阶梯宏敲出,让你在忘记词的时候更加方便。宏从1~10代表颜色逐渐变深,你可以根据自己的感觉使用浅一级或深一级的宏。

    self.view.backgroundColor = Wonderful_YelloeColor4;
    self.view.backgroundColor = Wonderful_BrownColor4;


Drawing Drawing

二、UIColor+Separate

1.提供颜色分离方案,可以将任意颜色的rbga值取出。

    UIColor *testC = [UIColor salmonColor];
    float r= [testC red];
    float g= [testC green];
    float b= [testC blue];
    float alpha= [testC alpha];
    NSLog(@"******  %f,%f,%f,%f",r,g,b,alpha);

2.可以通过一个颜色计算出此颜色的反色,使得背景无论被用户设置成什么颜色,文字颜色都是背景的反色。

self.showLbl1.backgroundColor = [UIColor peachRed];
self.showLbl1.textColor = [[UIColor peachRed]reverseColor];

3.也可以直接打印这个颜色的各项详细值。

[[UIColor salmonColor]printDetail];
// 打印结果
This Color's Red:250, Green:128, Blue:114, Alpha:1
decimal red:0.9804 green:0.5020 blue:0.4471
Hexadecimal 0xfa8072

4.提供了颜色微调方案,可以调整一个已知颜色的RGB值的某个值,可用于无论背景是什么颜色,边框都比背景深20。 也可以打印出认可颜色的详细值。

    UIColor *navColor = [[UIColor redColor]up:SXColorTypeBlue num:30]; // 在红色上把蓝色色值提高30
    UIColor *barColor = [[UIColor blueColor]up:1 num:140]; // 可以直接用枚举对应的tag
    UIColor *bgColor = [[UIColor blackColor]down:SXColorTypeAlpha num:10]; // 取一个比黑色稍微淡的颜色
    UIColor *lineColor = [bgColor up:3 num:20]; // 不管背景是什么颜色 线都比背景浅20.

image

三、SXColorGradientView

1.颜色渐变的view,可以设置任何颜色到透明的过渡。

SXColorGradientView *grv1 = [SXColorGradientView createWithColor:[UIColor paleGreen] frame:CGRectMake(10, 10, 80, 30) visible:YES direction:SXColorGradientToRight];

2.也可以设置两个颜色相互过渡。

SXColorGradientView *grv3 = [SXColorGradientView createWithFromColor:[UIColor peruColor] toColor:[UIColor ghostWhite] frame:CGRectMake(10, 50, 80, 30) direction:SXColorGradientToRight];

3.可以设置向下、向上、向左、向右四个方向的过渡。

typedef NS_ENUM(NSInteger, SXColorGradientDirection) {
    SXColorGradientToTop = 1,
    SXColorGradientToLeft = 2,
    SXColorGradientToBottom = 3,
    SXColorGradientToRight = 4,
};

4.支持传入一个数组,然后构建一个多个颜色过渡的view。
Drawing

四、SXMarquee

1.实现任何样式的跑马灯。

SXMarquee *mar3 = [[SXMarquee alloc]initWithFrame:CGRectMake(20, 390, 335, 25) speed:2 Msg:@"If you've submitted an update to fix a critical bug in your app on the App Store and you are requesting an expedited review." bgColor:[UIColor goldColor] txtColor:[UIColor goldenrod]];
[mar3 changeMarqueeLabelFont:[UIFont boldSystemFontOfSize:12]]; // 可以用默认也可以配置更多属性
[mar3 start];

2.跑马灯的背景可以设置任何颜色,这是基于颜色过渡view实现的。
3.跑马灯可以实现点击拖动,或者绑定更多点击事件。
image

五、SXColorLabel

1.将text中的重要内容用特殊符号括起来,会以特殊方式显示。
Drawing

2.如果用<>括起来,会显示高亮颜色。如果用[]括起来,会显示高亮字体。

lbl.text = @"例1:今天要记得通知<Peter>和<Robin>去开会。";
lbl2.text = @"例2:礼物很有[粪]量,你会大吃一[斤]!";

3.这个高亮颜色和高亮字体可以自行设置。

[SXColorLabel setAnotherColor:[UIColor salmonColor]];
[SXColorLabel setAnotherFont:[UIFont boldSystemFontOfSize:18]];

4.两者也可以混合使用。 高亮的字体里面可以有高亮颜色。

lbl3.text = @"例3:一定要:[通知<Peter>和<Robin>去开会]";

旧版demo
颜色列表
image