首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iPhone无法创建CGBitmapContext

iPhone无法创建CGBitmapContext
EN

Stack Overflow用户
提问于 2010-12-14 19:18:56
回答 2查看 4.1K关注 0票数 5

我在创建CGBitmapContext时遇到了问题。

代码语言:javascript
复制
CGContextRef bitmapContext = CGBitmapContextCreate(nil, imageSize.width, imageSize.height, 8, imageSize.width * 4, CGColorSpaceCreateDeviceRGB(), kCGImageAlphaNoneSkipFirst)

当我运行我的应用程序时,它正常工作。但是当我在我的“测试应用程序”(一个执行我的测试的运行应用程序)中运行它时,上下文被记录为(null),并且我得到了以下错误:

代码语言:javascript
复制
<Error>: CGContextSetFillColorWithColor: invalid context 0x0
<Error>: CGContextFillRects: invalid context 0x0
<Error>: CGContextDrawImage: invalid context 0x0
<Error>: CGContextDrawImage: invalid context 0x0
<Error>: CGBitmapContextCreateImage: invalid context 0x0

我的应用程序不会崩溃。但显然有些地方不对劲。(我知道这些错误是通过在nil上下文中调用这些方法而产生的)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-14 19:24:30

当您尝试创建的位图的大小为CGSizeZero时,通常会出现此错误。检查imageSize的实际值。

此外,您还会泄漏传递给函数的CGColorSpaceRef。

票数 7
EN

Stack Overflow用户

发布于 2010-12-15 00:13:26

是否检查CGBitmapContextCreate返回值是否为非空?如果设备上没有足够的内存来创建上下文,你将得到一个nil值。

你在应用程序中使用了多少内存,以及你询问的位图大小是多少?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4438571

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档