在我的视图中使用多个自定义图层作为子图层时,我目前面临一些性能问题。
以编程方式创建新图层后,我将其添加为子图层,例如:
[self.view.layer addSublayer:myNewSublayer];
这工作得很好。但是,当一遍又一遍地这样做时,我的应用程序开始越来越慢。我很确定会发生这种情况,因为我不断地在我的视图中添加一个新的子层。因此,为了解决这个问题,我尝试在添加新子层之前从 self.view.layer 中删除所有内容,例如:
[self.view.layer setContents:nil];
不幸的是,这并没有解决我的问题。
添加为子图层后,我的新子图层已正确发布。我在仪器中检查了这一点,绝对没有内存泄漏。但是,我确实看到每次添加新子层时内存都会增加(这并不会让我感到惊讶)。
我想我需要找到一种不同的方法来从我的视图层中删除所有子层。
任何帮助表示赞赏。提前致谢。