CATiledLayer:如何导致仅重新加载一些图块?
Posted
技术标签:
【中文标题】CATiledLayer:如何导致仅重新加载一些图块?【英文标题】:CATiledLayer: How to cause reload of just some tiles? 【发布时间】:2012-12-28 21:38:10 【问题描述】:我在滚动视图中使用平铺层来显示自定义视图。自定义视图的内容会定期更改,并且我知道发生这些更改的矩形。但是我发现,如果我执行 setNeedsRedisplay 只会重绘一个图块。如何告诉 CATiledLayer 仅重绘受影响的图块?
【问题讨论】:
【参考方案1】:如果您在 CATiledLayer 上调用 setNeedsDisplay,则它会重绘其所有图块。如果您改用 setNeedsDisplayInRect,它应该只重绘那些与您指定的矩形相交的图块。但请注意,它会重绘整个图块,而不仅仅是与矩形相交的部分。
请注意在绘制过程中调用 setNeedsDisplay 时 CATiledLayer 中的重绘错误。您可以在this question 找到更多信息。
【讨论】:
以上是关于CATiledLayer:如何导致仅重新加载一些图块?的主要内容,如果未能解决你的问题,请参考以下文章