Gaz*_*dge 9 iphone cocoa uiview catiledlayer ios
我有一个CATiledLayer支持的视图.我想从这个CATiledLayer UIView中获取可见的tile,并将其作为CALayer支持添加到另一个视图中,从而在另一个不使用CATiledLayer的UIView中重新创建可见图像.
我想要这样做的原因是我将使用第二个UIView来掩盖更新CATiledLayer支持的UIView的效果 - 这会在重新加载所有切片时产生闪烁.
问题是,我不完全确定我会怎么做.有任何想法吗?
CATiledLayer 是 CALayer 的子类,提供了一种异步提供图层内容图块的方法,可能以多个详细级别进行缓存。
您可以使用以下命令将图层中的可见内容渲染到 CGContextRef 中:
- (void)renderInContext:(CGContextRef)ctx
Run Code Online (Sandbox Code Playgroud)
然后使用它通过设置其委托并实现来更新您的其他层
- (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)context
Run Code Online (Sandbox Code Playgroud)
此处显示的 ss http://www.raywenderlich.com/2502/introduction-to-calayers-tutorial
但老实说,我认为这效率不高。