我试图避免 iOS 上的混合层以提高性能。但是,我注意到我使用的可调整大小的图像backgroundView
of my UITableViewCell
被标记为混合层:
事实上,使用任何可调整大小的图像(即使是没有透明度的 JPEG)都会导致图层混合,如该屏幕截图所示,其中首先使用 PNG,然后使用 JPEG 作为可调整大小的图像。UIImageView
。唯一不需要混合图层的可调整大小的图像是 1x1 像素图像,如底部所示:
有什么办法可以避免这种情况吗?核心动画分析是一种不精确的艺术(至少对我来说),但我认为它是滚动表格视图时帧率下降到 25 FPS 左右的主要原因。
Edit2:经过更多实验,我发现如果我仅垂直或水平拉伸图像(PNG 或 JPG),它们不会被标记为混合图层。然而,经过更多的实验,我认为这可能是因为仅在一维上拉伸的图像较小。我的图像没有被视为以 100x100 混合,而是以 150x100 处理。
我创建了一个非常宽的图像,并且仅垂直拉伸它。这不需要混合图层,并且为我的表视图单元格实现了正确的效果。这并不理想,但由于高度较小,视网膜图像仍然只有 236 字节。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)