如代码:
view.opaque = YES;
和
view.backgroundColor = [UIColor clearColor];
是谁能解释一下这个?
修改
如文件所示:
Declare Views as Opaque Whenever Possible
UIKit使用每个视图的opaque属性来确定视图是否可以优化合成操作。对于自定义视图,将此属性的值设置为YES会告诉UIKit它不需要在视图后面呈现任何内容。较少的渲染可以提高绘图代码的性能,并且通常会受到鼓励。当然,如果将opaque属性设置为YES,则视图必须使用完全不透明的内容完全填充其边界矩形。
opaque 属性用于确定视图是否可以优化合成操作。
所以问题是:
如果我设置view.opaque = YES
和view.backgroundColor = [UIColor clearColor]
,前者会提高效果,后者会怎样?
答案 0 :(得分:8)
opaque标志用作渲染的优化。如果在视图不应该是不透明的情况下将其设置为YES,那么如果您确实希望通过视图显示内容,则可能会出现意外渲染。
我的理解是,有时会检查opaque标志,看看是否应该检查alpha值。
答案 1 :(得分:2)
不,不应该。它应该行动清楚。颜色清晰是完全不透明的,如果这甚至是有意义的。如果您更改其alpha,它将不会显示黑色或白色或其他任何内容。很明显。