我在创建CGBitmapContext时遇到了问题。
CGContextRef bitmapContext = CGBitmapContextCreate(nil, imageSize.width, imageSize.height, 8, imageSize.width * 4, CGColorSpaceCreateDeviceRGB(), kCGImageAlphaNoneSkipFirst)当我运行我的应用程序时,它正常工作。但是当我在我的“测试应用程序”(一个执行我的测试的运行应用程序)中运行它时,上下文被记录为(null),并且我得到了以下错误:
<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上下文中调用这些方法而产生的)。
发布于 2010-12-14 19:24:30
当您尝试创建的位图的大小为CGSizeZero时,通常会出现此错误。检查imageSize的实际值。
此外,您还会泄漏传递给函数的CGColorSpaceRef。
发布于 2010-12-15 00:13:26
是否检查CGBitmapContextCreate返回值是否为非空?如果设备上没有足够的内存来创建上下文,你将得到一个nil值。
你在应用程序中使用了多少内存,以及你询问的位图大小是多少?
https://stackoverflow.com/questions/4438571
复制相似问题