iOS放大视图不显示

时间:2014-04-04 09:23:59

标签: ios objective-c uikit

您好我正在尝试用相同的手指触摸(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给出正确的结果。

但结果将是这样的。

enter image description here

1 个答案:

答案 0 :(得分:0)

您应该使用setNeedsDisplay方法重新绘制,就像这样

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    // some code here 

    //redraw
    [magnify setNeedsDisplay]; 
}