我有单视图控制器应用程序。它包含UIImageView,用户触摸它在屏幕上绘制。这部分工作正常。在视图中做了viewcontroller的加载方法我设置了一个不同的图像作为背景图像。我将该图像视图背景设置为清晰的颜色。现在,当我尝试从UIImageView中删除某些内容时,我也会删除视图控制器背景视图。我怎么能避免这个?
这是我的代码 在viewDidLoad()
中设置viewcontroller的背景self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bacground.png"]];
image.backgroundColor = [UIColor clearColor];
在touchesMoved方法中在屏幕上绘图
UIGraphicsBeginImageContext(image.frame.size);
[image.image drawInRect:CGRectMake(0, 0, image.frame.size.width, image.frame.size.height)];
CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);
CGContextSetLineWidth(UIGraphicsGetCurrentContext(), lineWidth);
CGContextSetStrokeColorWithColor(UIGraphicsGetCurrentContext(), self.drawcolor.CGColor);
CGContextBeginPath(UIGraphicsGetCurrentContext());
CGContextMoveToPoint(UIGraphicsGetCurrentContext(), lastPoint.x, lastPoint.y);
CGContextAddLineToPoint(UIGraphicsGetCurrentContext(), currentPoint.x, currentPoint.y);
CGContextStrokePath(UIGraphicsGetCurrentContext());
image.image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
要擦除我只是将drawcolor设置为whiteColor。
答案 0 :(得分:0)
要设置后台使用的图像,然后尝试在视图上绘制另一个图像
UIImageView *background = [[UIImageView alloc]initWithImage:[UIImage imageNamed: @"backipad.png"]];
self.view = background;
尝试上面,我没有遇到过这样的问题,但我认为这对你有用......并且
background.userInteractionEnabled = YES;