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

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内部会加一个进去!

时间: 2024-09-20 20:35:28

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

MyBatis MapperProvider MessageFormat拼接批量SQL语句执行报错的原因分析及解决办法_MsSql

最近在项目中有这么一段代码:下载服务器基础业务数据进行本地批量插入操作,因项目中使用mybatis进行持久化操作,故直接考虑使用mybatis的批量插入功能. 1.以下是Mapper接口的部分代码 public interface PrintMapper { @InsertProvider(type = PrintMapperProvider.class,method = "insertAllLotWithVehicleCode4H2") void insertAllLotWithVe

wordpress后台访问时没有wp-admin报404错误原因分析

前几天不知道对wordpress所在的服务器做什么操作了今天更新时后台所有的菜单都出现了404错误.本来以为是服务器上丢失了文件导致的.但是我登录上服务器查看所有的后台文件都在呢.多点了几个链接发现URL里没有自动添加上wp-admin这一级目录,所以报404错误. 回想以下好像是我改了head的base,但是在代码里找了找没发现哪和之前不一样.和另一个wordpess的站的后台head对比了一下也没发现问题. 1. 检查网站 .htaccess 文件 登陆FTP找到根目录下的.htaccess

接口-在上传图文消息素材时,总报错说是不合法的媒体文件id,不知道什么才是正确的id呢

问题描述 在上传图文消息素材时,总报错说是不合法的媒体文件id,不知道什么才是正确的id呢 package main;import java.util.ArrayList;import java.util.List;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import pojo.AccessToken;import pojo.Article;import pojo.Articles;import util.WeixinUtil

jsp页面访问带有空格的路径的文件时,会报错?

问题描述 jsp页面访问带有空格的路径的文件时,会报错? 解决方案 单例模式?可能会出错,但是你首先考虑路径是否正确. 解决方案二: 这是命名要求的把!一般命名不能有空格 解决方案三: 你的propertise文件没有找到,你执行IO操作的时候,路径错了 解决方案四: 我把tomcate的路径换到没有空格的文件夹下面,重新配环境变量就好了,,谨记 解决方案五: 我把tomcate的路径换到没有空格的文件夹下面,重新配环境变量就好了,,谨记

nodejs 判断 数组为空的 json数据时,一直报错undefined

问题描述 nodejs 判断 数组为空的 json数据时,一直报错undefined 对不起各位大神,请不要恨铁不成钢,我真心不懂这个简单的初级问题. 我自己在做一个API小程序,用nodejs的request包抓取了许多json数据. 问题简单的来说就是,我需要判断一个有时候有数值,有时候却为空的属性,属性名为deliverTime, 当deliverTime存在的时候,抓取这个json属性,当deliverTime不存在的时候,不抓取. 然而,如果我的判断语句为: if(body.data.

ssh整合-spring整合hibernate做测试时没有报错,当三个整合时启动就报错啦,求大神指点!!

问题描述 spring整合hibernate做测试时没有报错,当三个整合时启动就报错啦,求大神指点!! 报的错误org.springframework.scheduling.quartz.JobMethodInvocationFailedException: Invocation of method 'ecsUnsigned' on target class [class $Proxy17] failed; nested exception is org.springframework.tran

c#-C#仿QQ聊天的代码。在打开聊天窗口并输入聊天内容执行发送时,程序报错

问题描述 C#仿QQ聊天的代码.在打开聊天窗口并输入聊天内容执行发送时,程序报错 这是一段仿QQ聊天的代码.在打开聊天窗口并输入聊天内容执行发送时,程序报错: 参数化查询 '(@FromUserId int,@ToUserId int,@Message nvarchar(1),@MessageType' 需要参数 '@MessageState',但未提供该参数. 错误详细信息为: 未处理 System.Data.SqlClient.SqlException Message="参数化查询 '(@F

linux下php添加mysqli拓展库时,编译报错

问题描述 linux下php添加mysqli拓展库时,编译报错 php和mysql都是已经编译安装好了,现在想要给php添加mysqli 拓展库,结果在make的时候报错 cd /usr/local/src/php-5.6.19/ext/mysqli /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/local/mysql/bin/mys

下面的代码为什么出错?该怎么去改?数据库中设置的允许为NULL,但不输入值时为什么会报错?

问题描述 下面的代码为什么出错?该怎么去改?数据库中设置的允许为NULL,但不输入值时为什么会报错? 解决方案 看下output窗格输出的错误提示,你的empAge是什么类型?是int?还是int,如果是int不能接收null