在绘制之前设置CGLayer的“不透明度”?

时间:2010-01-06 21:29:52

标签: iphone xcode alpha blend cglayer

我有UIView子类 - 实际上是一个拼图 - 在initWithFrame初始化了2个不同的CGLayer。

在drawRect中,我必须混合这两层,并且最上层应该具有变量alpha ,具体取决于游戏逻辑。

最好的(性能最佳)方法是什么?是否有任何CGLayer或CGContext函数在绘制之前设置一些alpha?

1 个答案:

答案 0 :(得分:6)

设置图层的-opacity。请记住,图层的-opaque设置必须为NO。默认值为NO,但出于性能原因,它通常设置为YES。

如果您已经在-drawInContext:,那么您可以试用CGContextSetAlpha()。但是,通常,您不会同时使用-drawRect:和图层。您通常让视图或图层执行绘图。