只是想知道将(背景)视图的 opaque
属性设置为 NO
,而不是简单地将视图的背景颜色设置为' clearColor
'之间会有什么区别。如果我做后者,是否会这样,那么也无需将opaque
属性设置为NO
(如self.view.opaque = 0
中)吗?
世界上所有的差异。他们没有任何关系。对另一个都没有任何影响。
opaque
,如果YES
,会向图纸系统发送一条消息,以了解是否可以通过不必使用其背后的内容复合此视图来节省某些周期。
backgroundColor
是,嗯,背景的颜色。如果背景颜色是不透明的,并且视图的alpha
为1,则将opaque
设置为YES
是您的您的责任。它本身不会发生。
大提示:我希望您不要将opaque
与Layer的opacity
或查看alpha
混淆。那是另一回事。
uiview.opaque文档提供了有关其工作原理的大量细节。
opaque
属性与将backgroundColor
设置为清除不同。
也不与设置视图的alpha
值相同。
它唯一影响的是OS在drawRect
方法内绘制视图的方式。允许它跳过渲染通行证,以将设置为YES
。
所有内容都在文档中。
n.b。始终读取文档。