티스토리 뷰
728x90
반응형
#import <UIKit/UIKit.h>
@interface RenderView : UIView
{
CGImageRef imageRef;
char *rawData;
int rb, w, h;
CGColorSpaceRef colorSpace;
}
@end
#import "RenderView.h"
@implementation RenderView
- (id)initWithCoder:(NSCoder *)aDecoder {
self = [super initWithCoder:aDecoder];
NSLog(@"initWithCoder");
colorSpace = CGColorSpaceCreateDeviceRGB();
w = self.bounds.size.width;
h = self.bounds.size.height;
rb = 4*w;
NSLog(@"w=%i h=%i", w, h);
rawData = (char*)malloc(h * rb);
for(int i=0; i<h; i++) {
for(int j=0; j<w; j++) {
rawData[rb*i + 4*j+0] = 255;//A
rawData[rb*i + 4*j+1] = 0;
rawData[rb*i + 4*j+2] = 0;
rawData[rb*i + 4*j+3] = 255;//R
}
}
return self;
}
// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
- (void)drawRect:(CGRect)rect
{
[super drawRect:rect];
// Drawing code
NSLog(@"RenderView.drawRect");
// 빨간 사각형을 그려보자
CGContextRef context = UIGraphicsGetCurrentContext();
// 픽셀을 입력하자
CGContextRef ctx = CGBitmapContextCreate(rawData,w,h, 8,
rb,
colorSpace,
kCGImageAlphaPremultipliedLast
);
imageRef = CGBitmapContextCreateImage(ctx);
CGContextRelease(ctx);
// 그리자 이제
CGContextDrawImage(context, CGRectMake(0,0,w,h), imageRef);
}
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
}
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
}
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
}
@end
반응형
'모바일 프로그래밍' 카테고리의 다른 글
iOS 게임 렌더링 루프 만들기 (0) | 2016.04.24 |
---|---|
iOS clock_gettime() 에러 해결 (0) | 2016.04.24 |
Android 런쳐 뱃지 카운트 설정 (0) | 2016.04.19 |
iOS Restoring Purchase Products 문제로 리젝되었을때 (0) | 2016.04.17 |
iOS 라이브러리 추가시에는 항상 'Add Files to (ProjectName)'을 사용하자 (0) | 2016.04.17 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday