7

我在使用 CGImageDestinationFinalize 时遇到了 iOS 问题。我将在 CGImageDestinationRef 上调用 CGImageDestinationFinalize 并收到以下警告

错误:“CGContextClear”功能已过时,将在即将到来的更新中删除。不幸的是,这个应用程序或它使用的库正在使用这个过时的函数,从而导致系统性能的整体下降。

查看 Instruments,当我调用 CGImageDestinationFinalize 时,我的内存使用量猛增(有时它会变得如此之高以至于崩溃)。我不确定这个问题是否应该归咎于,但我已将其隔离为 CGImageDestinationFinalize 的问题

关于使用什么来避免调用 CGContextClear 的任何建议?或者如何使用 CGImageDestinationFinalize 减少内存使用?

4

1 回答 1

0

我会说它肯定与 CGContextClear 有关。它保留了您在内存中绘制的任何内容。虽然您的上下文不会被清除或释放,但它会将在该上下文中定义的元素保留在内存中。您使用的是哪个版本的 iOS?
我很确定 CGContextClear 不适用于 iOS 6 及更高版本。

如果您转到文档,您会注意到 CGContextClear 不再出现 https://developer.apple.com/library/ios/DOCUMENTATION/GraphicsImaging/Reference/CGContext/Reference/reference.html

寻找可能有助于您的目的的 CGContextClearRect

于 2013-10-02T21:18:05.353 回答