如何重用CALayer

时间:2011-05-11 05:28:15

标签: cocoa-touch ios calayer

我想在自定义表滚动视图中为每个单元格背景使用CAGradientLayer。如果我为每个单元格分配CAGradientLayer,滚动速度很慢,所以我想以某种方式重用每个单元格的渐变,以及如何在UIImage中重用UIImageView。这样的事情有可能吗?

gradient = [CAGradientLayer new];
        gradient.frame = innerView.bounds;
        gradient.colors = [NSArray arrayWithObjects:(id)topColor.CGColor, (id)bottomColor.CGColor, nil];
        //gradient.shouldRasterize = YES;
    [innerView.layer insertSublayer:gradient atIndex:0];

1 个答案:

答案 0 :(得分:0)

我意识到我可以使用renderInContext:将渐变(UIGraphicsBeginImageContext())渲染到上下文中,并重用从中获取的图像。