iOS 绘图时使用 UIGraphicsGetCurrentContext() 报错的原因分析-阿里云开发者社区

开发者社区> 悟静> 正文

iOS 绘图时使用 UIGraphicsGetCurrentContext() 报错的原因分析

简介: iOS 绘图时使用 UIGraphicsGetCurrentContext() 报错的原因分析 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循“署名-非商业用途-保持一致”创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。
+关注继续查看

iOS 绘图时使用 UIGraphicsGetCurrentContext() 报错的原因分析

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es)

本文遵循“署名-非商业用途-保持一致”创作公用协议

转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino否则,出自本博客的文章拒绝转载或再转载,谢谢合作。


问题描述:

CGContextRef ctx = UIGraphicsGetCurrentContext();

为什么会报这个错误:is using an invalid context  and is thereby contributing to an overall degradation of system stability and reliability

有道翻译:是使用一个无效的上下文,从而导致整体退化系统稳定性和可靠性




默认是Nil,在调用 drawRect前,视图对象会先往栈上压入一个有效的上下文并使它成为当前上下文。

如果你不是使用UIView对象来做绘画操作,那么你就得使用 UIGraphicsPushContext 函数手工往栈上压入一个有效的上下文了



综上所述,可能是没在UIView类的 drawRect 里面来操作,这个方法是由框架来调用的,调用前,UIView内部会加一个进去!


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Zuul整合Swagger,使用ZuulFilter解决下游服务context-path
问题起因:使用Zuul网关服务,需要整合下游系统的swagger,但是下游服务存在context-path配置,无法正确跳转,最后使用ZuulFilter解决。 1.Zuul整合下游swagger 首先介绍一下Zuul如何整合下游服务swagger,很好理解,就是通过Zuul的swagger地址,实现将下游服务的swagger都放入同一个页面内,流转图如下: 1.
330 0
Android开发13——内容提供者ContentProvider的基本使用
  一、ContentProvider简介 当应用继承ContentProvider类,并重写该类用于提供数据和存储数据的方法,就可以向其他应用共享其数据。ContentProvider为存储和获取数据提供了统一的接口。虽然使用其他方法也可以对外共享数据,但数据访问方式会因数据存储的方式而不同,如采用文件方式对外共享数据,需要进行文件操作读写数据;采用sharedpreferences
899 0
源码分析 RocketMQ DLedger 多副本之 Leader 选主
本文将按照《RocketMQ 多副本前置篇:初探raft协议》的思路来学习RocketMQ选主逻辑。首先先回顾一下关于Leader的一些思考: 节点状态需要引入3种节点状态:Follower(跟随者)、Candidate(候选者),该状态下的节点会发起投票请求,Leader(主节点)。
2188 0
源码分析 RocketMQ DLedger 多副本存储实现
详细介绍了RocketMQ DLedger 多副本存储实现部分,主要参考RocketMQ 存储部分的设计理念,并重点阐述 DLedger 消除存储格式、索引文件存储格式,诸如内存映射、刷盘、过期文件删除、文件加载与恢复由于在《RocketMQ技术内幕》中详细介绍,故本文并未重复介绍。
1997 0
错误代码 missing-signature 错误原因: 缺少签名参数-自查方案
[b]报错截图[/b] [attachment=2253][b]错误原因:[/b] 1.php版本低于5.5 2.把配置私钥的位置,填写成了支付宝公钥或者商户公钥导致。 [color=#ff0000]更多密钥填写错误查看:[url]https://openclub.
1075 0
QGraphicsItem如何使用信号/槽
简述 对于 QGraphicsItem 来说,信号/槽和属性机制不是它的一部分,因为它不继承自 QObject。这是一个出于性能考虑的设计决策,允许比较大的场景以及快速的交互。 特殊情况下,如果真的需要使用信号/槽,可以使用 QObject 的信号/槽和属性机制来扩展 QGraphicsItem。 简述 继承自 QObject 和 QGraphicsItem 继承
1345 0
hexo g报错 用的next主题 ERROR Script load failed: themes/hexo-theme-next/scripts/tags/exturl.js
ERROR Script load failed: themes/hexo-theme-next/scripts/tags/exturl.js Error: Cannot find module 'hexo-util' at Function.Module._resolveFilename (module.js:336:15) at Function.Module._loa
3379 0
可观测系统存储分析最佳实践
分享在北京云峰会智能运维场的主题
348 0
+关注
悟静
从事软件行业近二十年
690
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载