【发布时间】:2012-03-16 19:47:20
【问题描述】:
有没有人有任何技巧可以提高 CATiledLayer 在视网膜显示器上的性能?
这篇文章: CATiledLayer in iPad retina simulator yields poor performance
暗示模拟器存在问题,但我注意到实际设备上的性能也很差。这是一个非常明显的问题,因为它会更快地在视网膜显示器上加载更大的图块。我唯一能做的就是重新处理具有更多细节层次的平铺图像。
我做了一个小技巧:
CGFloat scale = CGContextGetCTM(context).a / self.contentScaleFactor;
在计算规模时,但这似乎不足以应对性能不佳的情况。
【问题讨论】:
-
只是确认我在硬件上看到了同样的问题。 CATiledLayer 在我的 iPad 2 上似乎比在我的 iPad 3 上工作得更好。不确定这是由于我的代码中的错误,还是一些潜在的问题。
-
覆盖
-(void)didMoveToWindow { [super didMoveToWindow]; self.contentScaleFactor = 1; }。简短的故事是 CATiledLayer 已经基于屏幕像素(不是“点”)工作。更多讨论here
标签: ios core-graphics retina-display