//
// PaintView.m// TestPaint
//
// Created by minixx on 12-5-7.
// Copyright (c) 2012年 __MyCompanyName__. All rights reserved.
//
#import "PaintView.h"
@implementation PaintView
@synthesize drawImage;
- (id)initWithFrame:(CGRect)frame
{
//默认初始化,imageView
self = [super initWithFrame:frame];
if (self) {
// Initialization code
if(self.drawImage==nil){
self.drawImage = [[UIImageView alloc] initWithImage:nil];
[self.drawImage setFrame:self.frame];
[self addSubview:self.drawImage];
[drawImage release];
}
}
return self;
}
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
UITouch *touch = [touches anyObject];
lastPoint = [touch locationInView:self];
NSLog(@"lastPoint.x = %f",lastPoint.x);
NSLog(@"lastPoint.y = %f",lastPoint.y);
}
//监听触摸事件
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{
UITouch *touch = [touches anyObject];
currentPoint = [touch locationInView:self];
NSLog(@"currentPoint.x = %f",currentPoint.x);
NSLog(@"currentPoint.y = %f",currentPoint.y);
UIGraphicsBeginImageContext(self.frame.size);
[drawImage.image drawInRect:CGRectMake(0, 0, drawImage.frame.size.width, drawImage.frame.size.height)];
CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);
CGContextSetLineWidth(UIGraphicsGetCurrentContext(), 5.0);//设置宽度
CGContextSetRGBStrokeColor(UIGraphicsGetCurrentContext(), 0.0, 0.0, 0.0, 1.0);//设置颜色
CGContextBeginPath(UIGraphicsGetCurrentContext());//开始路径
CGContextMoveToPoint(UIGraphicsGetCurrentContext(), lastPoint.x, lastPoint.y);//起始点坐标
CGContextAddLineToPoint(UIGraphicsGetCurrentContext(),currentPoint.x, currentPoint.y);//终点坐标
CGContextStrokePath(UIGraphicsGetCurrentContext());//开始绘制
//将画好得生成image保存在原图片//////////
drawImage.image = UIGraphicsGetImageFromCurrentImageContext();//把图形上下文
UIGraphicsEndImageContext();
lastPoint = currentPoint;
// [self setNeedsDisplay];
}
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
}
@end