UIColor를 통하여 UIImage 생성하기
보통 작업을 하면서 일정 색상의 뷰를 쓰려면 뷰의 backgroundColor 속성을 조절하면 된다. 그런데 이미지 합성을 한다거나 몇몇 특수한 경우에 단색의 이미지가 있으면 편할떄가 있다. 그렇다고 그때마다 그 이미지를 생성하자니 매우 귀찮은 일이다. 색상과 사이즈를 정하면 UIImage로 추출하는 소스다
1 2 3 4 5 6 7 8 9 10 11 |
- (UIImage*)imageWithColor:(UIColor *)color size:(CGSize)size { CGRect rect = CGRectMake(0.0f, 0.0f, size.width, size.height); UIGraphicsBeginImageContext(rect.size); CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSetFillColorWithColor(context, [color CGColor]); CGContextFillRect(context, rect); UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return image; } |
예제 다운로드