以下是我正在使用的代码摘录:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, 0), ^
{
UIGraphicsBeginImageContextWithOptions(irect.size, YES, 0.0 );
CGContextRef context = UIGraphicsGetCurrentContext();
if (context == 0)
NSLog (@"Null Graphics Context") ;
else
NSLog (@"OK") ;
. . . .
// Various drawing functions
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
}) ;
我发现对UIGraphicsGetCurrentContext的每次调用都返回NULL。我在控制台上收到此消息。
CGContextRestoreGState:无效的上下文0x0。这是一个严重的错误。该应用程序或其使用的库正在使用无效的上下文,从而导致系统稳定性和可靠性的整体降低。此通知是礼貌的:请解决此问题。在即将到来的更新中,它将成为一个致命的错误。
什么会导致UIGraphicsGetCurrentContext返回无效的图形上下文?
答案 0 :(得分:15)
根据评论的建议,答案是传递给CGRect
的{{1}}的区域为零。这显然无法创建图形上下文。