:CGContextSetFillColorWithColor:无效的上下文0x0。这是 一个严重的错误。此应用程序或它使用的库正在使用 无效的上下文,从而导致整体退化 系统稳定性和可靠性。这个通知是礼貌的:拜托 解决这个问题。在即将到来的更新中,它将成为一个致命的错误。
:CGContextSetStrokeColorWithColor:无效的上下文0x0。这个 是一个严重的错误。此应用程序或其使用的库正在使用 一个无效的背景,从而有助于整体 系统稳定性和可靠性降低。这个通知是一个 礼貌:请解决这个问题。它将成为一个致命的错误 即将到来的更新。
和类似的错误重复:
在我的应用中,我不使用任何CGContext的东西。我只有UITextView
,UIButton
和UILabel
。添加的代码不多。只需将UITextView
的内容设置为:
[self.text_view setText:@"123"];
如何解决错误?
我正在使用Xcode 5.0(版本5A1413),iOS 7模拟器(64位Retina 4“),Mac OS X 10.8.5
答案 0 :(得分:39)
试试这个:在xcode中为CGPostError添加符号断点。 (添加符号断点,并添加到符号字段类型CGPostError)
发生错误时,调试器将停止执行代码,您可以检查方法调用堆栈并检查参数。
答案 1 :(得分:2)
使用CGContext和UIBezierPaths时我遇到了类似的错误,我使用了Juraj Antas'接近,我立即找到了原因。
我正在使用CGContext绘制UIImageView。首先,我创建一个UIBezierPath,然后使用CGContextAddPath(..)
绘制它。我发现在创建UIBezierPath时我正在设置颜色,xcode不喜欢并且被CGContextSetStrokeColorWithColor(..)
覆盖。我从UIBezierPath创建代码中删除UIColor.whiteColor().set()
后,错误就消失了。
答案 2 :(得分:0)
感谢@shnaz的建议。
我遇到了同样的问题,它花了我一些时间才发现问题,希望我的解决方案可以帮助其他人,如果他们遇到同样的问题。
我可能没有仔细阅读文档,而且我是创建UIBezierPath的新手。事实证明,在XCode6中,.stroke()
和.fill()
有时会导致无效的上下文0x0。