在iOS上使用resizableImages时避免混合图层

我试图避免iOS上的混合图层来提高性能。 不过,我注意到我用于UITableViewCellbackgroundView的可resize的图像被标记为混合图层:

UITableViewCell被视为一个混合层

实际上,使用任何可resize的图像(甚至是不带透明度的JPEG)都会导致图层混合,如此截图所示,首先在UIImageView使用PNG和JPEG作为可resize的图像。 唯一不需要混合图层的可resize的图像是一个1×1像素的图像,从底部看:

第一个图像是PNG,第二个是JPEG,第三个是1x1像素的PNG

有什么办法可以避免这种情况? 核心animation分析是不准确的艺术(至less对我来说),但我认为这是滚动我的表格视图下降到大约25 FPS的主要贡献者。

编辑2:经过更多的实验,我发现,如果我只是垂直或水平拉伸的图像(PNG或JPG),他们没有标记为混合层。 但是,在更多的实验中,我认为这可能是因为只有一维的图像较小。 我的图像没有被视为混合在100×100,但它是在150×100。

在这里输入图像说明

我创造了一个非常宽的形象,只有垂直拉伸。 这不需要混合图层,并实现了我的表格视图单元格的正确效果。 这并不理想,但由于高度很小,视网膜图像仍然只有236字节。

非常宽的可伸缩图像,不被视为混合图层