iOS 生成随机颜色(UIColor)

简介:

#import <UIKit/UIKit.h>


@interface UIColor (RandomColor)

+(UIColor *) randomColor;

@end



#import "UIColor+RandomColor.h"


@implementation UIColor (RandomColor)


+(UIColor *) randomColor

{

    CGFloat hue = ( arc4random() % 256 / 256.0 );  //0.0 to 1.0

    CGFloat saturation = ( arc4random() % 128 / 256.0 ) + 0.5;  // 0.5 to 1.0,away from white

    CGFloat brightness = ( arc4random() % 128 / 256.0 ) + 0.5;  //0.5 to 1.0,away from black

        return [UIColor colorWithHue:hue saturation:saturation brightness:brightness alpha:1];

@end



将随机生成的颜色绘制成图片。


-(void)createImage

{


    NSString* path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES)objectAtIndex:0];


    path = @"/Users/shouqiangwei/Desktop/未命名目录 2";

    NSLog(@"path = %@",path);

    NSString *imgName;

    NSString *imgURL;

    NSString *markNum;

    UIImage *img;

    NSData *imgData;

    NSError *err;

    int width= 1000, height=1000, fontSize;

    CGPoint markPoint;

    int baseLength = 320;

    NSFileManager *fm = [NSFileManagerdefaultManager];

    for (int i=0; i<1000; i++) {


        UIColor *color = [UIColorrandomColor];

        [_currentColorImageViewsetBackgroundColor:color];


        imgName = [NSString stringWithFormat:@"%i.jpg", i+1];

        _lblCount.text = imgName;


        imgURL = [path stringByAppendingPathComponent:imgName];

        if (![fm fileExistsAtPath:imgURL]) {

            const CGFloat *colorComps = CGColorGetComponents(color.CGColor);

            markNum = [NSString stringWithFormat:@"%i", i+1];


            fontSize = width / 5;

            markPoint = CGPointMake(fontSize/2, fontSize/2);


            UIGraphicsBeginImageContext(CGSizeMake(width, height));

            CGContextRef ctx =UIGraphicsGetCurrentContext();

            CGContextSetRGBFillColor(ctx, colorComps[0], colorComps[1], colorComps[2], colorComps[3]);

            CGContextFillRect(ctx, CGRectMake(00, width, height));

            CGContextSetRGBFillColor(ctx, 1.01.01.0,1.0);


            //创建图片上的数字。

            [markNum drawAtPoint:markPoint withFont:[UIFont systemFontOfSize:fontSize]];

            img = UIGraphicsGetImageFromCurrentImageContext();

            self.imageView.image= img;

            UIGraphicsEndImageContext();



            //创建到本地。

            imgData = [NSDatadataWithData:UIImageJPEGRepresentation(img,1.0f)];


            [imgData writeToFile:imgURLoptions:NSDataWritingAtomicerror:&err];


            if (err) {

                NSLog(@"error: %@\nimage:%@", err.localizedDescription, imgName);

            } else {

                NSLog(@"done: %@", imgName);

            }

        }

    }


}




版权声明:本文博客原创文章,博客,未经同意,不得转载。




本文转自mfrbuaa博客园博客,原文链接:http://www.cnblogs.com/mfrbuaa/p/4658763.html,如需转载请自行联系原作者


相关文章
|
8月前
|
安全 前端开发 iOS开发
钉钉里微应用ios 底部安全区域的颜色怎么修改?
钉钉里微应用ios 底部安全区域的颜色怎么修改?
234 5
|
iOS开发
iOS 渐变颜色 CGGradientCreateWithColorComponents 属性介绍
iOS 渐变颜色 CGGradientCreateWithColorComponents 属性介绍
174 0
|
iOS开发
iOS UIPageViewController 翻页背景颜色修改
iOS UIPageViewController 翻页背景颜色修改
67 0
|
iOS开发
iOS开发-改变图片的颜色
iOS开发-改变图片的颜色
439 0
iOS-UITextView设置行间距,内容颜色(变相设置类似UITextField的placeholder)
iOS-UITextView设置行间距,内容颜色(变相设置类似UITextField的placeholder)
394 0
iOS-UITextView设置行间距,内容颜色(变相设置类似UITextField的placeholder)
|
iOS开发
iOS开发 - 改变picker选中行字体颜色
iOS开发 - 改变picker选中行字体颜色
325 0
|
iOS开发
iOS开发 - 同一段文字显示不同颜色和字体
iOS开发 - 同一段文字显示不同颜色和字体
121 0
|
iOS开发
iOS开发 - 设置tabbar上各选项颜色
iOS开发 - 设置tabbar上各选项颜色
217 0
|
iOS开发
iOS开发-同一段文字显示不同颜色
iOS开发-同一段文字显示不同颜色
112 0

热门文章

最新文章