问题是......
我有一个父视图,其中我画了一个由很多CGPaths组成的平面测量法。 好吧,在这个应用程序中,我可以在父视图中插入子视图,其中绘制了其他CGPath(例如,代表椅子的线)。现在。我会像UITextView一样复制缩放效果,当有人点按,按住Tap,并且手持玻璃出现内容缩放时。
我会放置一个子视图,其中背景表示在子视图中剪切的父内容,例如缩放为x2。通过这种方式,子视图背景似乎是父视图上的手工玻璃。
我该如何实现?
我考虑过获取父上下文,将其传递给子视图,并使用rect子视图剪切父上下文。但没有任何反应。我嘲笑CGImageContext与女巫采取关于父CGContext的图像表示,并将其传递给子视图,但我不知道如何实现它。并且,我不知道它是否正确。
希望有人可以帮助我(代码示例会很棒)!
抱歉我的英文。我尽力了:))
答案 0 :(得分:1)
我自己解决了问题!
在子视图中drawrect:方法我把这段代码:
- (void)drawRect:(CGRect)rect {
// here we're just doing some transforms on the view we're magnifying,
// and rendering that view directly into this view.
// By 'touchPoint' i can select the exact portion of superview which
// i want render in subview
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextTranslateCTM(context,1*(self.frame.size.width*0.5),1*(self.frame.size.height*0.5));
CGContextScaleCTM(context, 1.5, 1.5);
CGContextTranslateCTM(context,-1*(touchPoint.x),-1*(touchPoint.y));
[self.superview.layer renderInContext:context];
}
希望这可以帮助别人:)