我正在使用 BButton ( https://github.com/jessesquires/BButton ) 在 UICollectionView 的单元格中绘制一些漂亮的按钮。当我刷新 UICollectionView 的数据时,我记录了一些内存泄漏(CollectionView 中每个单元格一个泄漏的对象)。我已经使用工具将其追溯到在“BButton.m”中创建的 CGGradient:
gradient = CGGradientCreateWithColors(colorSpace, (__bridge CFArrayRef)newGradientColors, newGradientLocations);
CGColorSpaceRelease(colorSpace);
我知道 CGGradients 应该被释放( CGGradientRelease() ),但是我不确定在哪里释放它,我尝试了几个位置(在绘制按钮之后,在 init 方法中返回之前)但我仍然得到同样的问题。
一切都在 IB 中完成,按钮和单元格不是以编程方式创建的。
任何帮助将不胜感激,我快把头发扯掉了!
谢谢