由颜色值生成图片

Objective C

@interface UIImage (Color)  

+ (UIImage *)imageWithColor:(UIColor *)color size:(CGSize)size;  

@end  

@implementation UIImage (Color)  

+ (UIImage *)imageWithColor:(UIColor *)color size:(CGSize)size  
{  
    CGRect rect = CGRectMake(0, 0, size.width, size.height);  
    UIGraphicsBeginImageContext(rect.size);  
    CGContextRef context = UIGraphicsGetCurrentContext();  
    CGContextSetFillColorWithColor(context,color.CGColor);  
    CGContextFillRect(context, rect);  
    UIImage *img = UIGraphicsGetImageFromCurrentImageContext();  
    UIGraphicsEndImageContext();  

    return img;  
}  
@end

使用:
self.slider   = [[UISlider alloc] init];
CGSize size   = CGSizeMake(1.0, 1.0);
UIImage *image = [UIImage imageWithColor:[UIColor redColor] size:size];
[self.slider setThumbImage:image forState:UIControlStateNormal];


swift
import Foundation
import UIKit

extension UIImage {
    class func imageWithColor(_ color: UIColor) -> UIImage {

        let rect = CGRect(x: 0, y: 0, width: 1.0, height: 1.0)
        UIGraphicsBeginImageContext(rect.size)
        let context = UIGraphicsGetCurrentContext()
        context?.setFillColor(color.cgColor)
        context?.fill(rect)
        let image = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()

        return image!
    }
}

使用:
slider = UISlider()
slider.setThumbImage(UIImage.imageWithColor(UIColor.red), for: UIControlState())

results matching ""

    No results matching ""