iPAD模拟器和设备之间的区别

时间:2011-03-01 12:09:17

标签: uiimage device ios-simulator

我在开发iPad应用程序时遇到了一个奇怪的行为(语言:C ++ / Objective-C):它发生在模拟器一切都没问题,换句话说应用程序运行成功,同时将程序实施到设备我收到一个难以理解的EXC_BAD_ACCESS。

这是我在Obj-C环境中的一大块代码:

-(void) BindTexture:(unsigned char*)TexBuff {  
    // TexBuff is a fild of a pointer list, containing data prevoisly saved  
    UIImager *texImg = (UIImage*)TexBuff;  
    CGImageRef imageRef = [texImage CGImage];  
    ....  
    .... {so on} ...  
}  

设备在调用CGImageRef之前停留。
奇怪的是模拟器和设备之间的区别 你有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您正在向 UIImage * 投射 unsigned char * - 这不是一件好事,可能是您的EXC_BAD_ACCESS的原因。

TexBuff应该是你的原始数据阵列吗?如果是这样,请参阅这篇文章,了解如何将原始数据(例如RGBA数据)转换为CGImage:

Converting RGB data into a bitmap in Objective-C++ Cocoa