我有UIView子类 - 实际上是一个拼图 - 在initWithFrame初始化了2个不同的CGLayer。
在drawRect中,我必须混合这两层,并且最上层应该具有变量alpha ,具体取决于游戏逻辑。
最好的(性能最佳)方法是什么?是否有任何CGLayer或CGContext函数在绘制之前设置一些alpha?
答案 0 :(得分:6)
设置图层的-opacity
。请记住,图层的-opaque
设置必须为NO。默认值为NO,但出于性能原因,它通常设置为YES。
如果您已经在-drawInContext:
,那么您可以试用CGContextSetAlpha()
。但是,通常,您不会同时使用-drawRect:
和图层。您通常让视图或图层执行绘图。