您好我正在尝试用相同的手指触摸(Y值)放大视图。我写下面的代码但是,它给出了一半的放大视图仍然模糊。
- (void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();
NSLog(@"%@", context);
CGContextTranslateCTM(context, self.frame.size.width / 2, self.frame.size.height / 2);
CGContextScaleCTM(context, scale, scale);
CGContextTranslateCTM(context, - touchPoint.x, - touchPoint.y + (self.scaleAtTouchPoint? 0 : self.bounds.size.height/2));
[self.viewToMagnify.layer renderInContext:context];
}
此处框架宽度和高度为80. 比例为1.5。如果我给scale = 1给出正确的结果。
但结果将是这样的。
答案 0 :(得分:0)
您应该使用setNeedsDisplay方法重新绘制,就像这样
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
// some code here
//redraw
[magnify setNeedsDisplay];
}