在Cocoa中,特别是iPhone SDK,该opaque属性被描述为:
如果不透明,则绘制操作假定视图填充其边界并且可以更有效地绘制.如果不透明且视图未填充其边界,则结果是不可预测的.如果视图完全或部分透明,请将此属性设置为NO.
根据我的经验,如果你有一个视图(标签,表格单元格,等)backgroundColor设置为[UIColor clearColor],你就不会需要设置opaque到NO它能够正确显示(有明显的背景).
直觉上,这样做也需要将NO设置为不透明,但我从来没有遇到过问题.
你可以混合opaque = YES和clearColor,还是我靠借来的时间生活?它似乎没有具体记录在任何地方.
尝试一下,看看是在 iPhone 上前进的唯一出路,因为正如您所说,尽管 SDK 附带的文档数量很大,但在很多情况下都不是很具体。
至于不透明,这只是对合成引擎的一个提示,告诉它不需要费心显示不透明层覆盖的任何层。然而,合成是由手机上的图形芯片完成的,因此在许多情况下,不绘制部分模糊图层的模糊部分并不会更有效,这很可能就是为什么您在渲染时不会看到事情变得混乱的原因。时刻(即可可忽略您尝试过的情况下的设置)。出于同样的原因,您并没有看到将 opaque 设置为 true 带来的性能提升。
因此,我的建议是坚持按照文档所说的方式使用不透明属性,因为您冒着渲染错误的风险,却没有真正的好处。
| 归档时间: |
|
| 查看次数: |
3662 次 |
| 最近记录: |