【发布时间】:2010-11-19 12:46:14
【问题描述】:
尽可能少地进行 Alpha 混合是 iPhone 上表格视图单元格的重要性能考虑因素。我有主要由一个大图像视图组成的表格单元格。我已将 UIImageView 设置为不透明,无论是在 Interface Builder 中还是以编程方式,但 CoreAnimation 工具仍然显示它是 alpha 混合的。
有没有办法让 UIImageViews 实际上不透明,还是我必须进行自定义绘图以防止混合?
【问题讨论】:
-
您在视图中加载什么样的图像?如果它是 PNG 或其他支持 alpha 的格式,Core Animation 可能会因为它的图像而混合视图。
-
这是一个PNG图像(推荐iPhone图像格式,IIRC),但它没有任何透明像素。
-
它们是 alpha 混合实际视图还是视图内容?检查器中的任何选项是否允许您将背景、颜色或样式设置为不透明?它是您可以在运行时设置的属性吗?
-
暂时搁置这个问题,您是否遇到了实际的性能问题?也就是说,我一直在我的表格单元格中使用 alpha 混合视图,并且它非常流畅。事实上,我有几个应用程序,其中单元格本身是透明的(因此表格背景显示出来),即使在较旧的(3G)硬件上也没有问题。我只是建议你不要在解决问题上付出太多努力,如果这对你来说不是一个真正的问题。
-
图片有alpha通道吗?即使没有透明像素,也很有可能存在 Alpha 通道。尝试删除它。
标签: iphone performance uitableview uiimageview quartz-graphics