0

我正在尝试从磁盘上的图像创建 CCSprite。该文件绝对是有效的图像,我想在 CCLayer 上显示它。我正在使用此代码来显示图像:

    // from a CCLayerColor
    CGDataProviderRef imgDataProvider = CGDataProviderCreateWithFilename(@"/documents/pathto/file.jpg");
    CGImageRef image = CGImageCreateWithJPEGDataProvider(imgDataProvider, NULL, NO, kCGRenderingIntentDefault);
    self.sprite = [CCSprite spriteWithCGImage:image key:@"sprite_frame_01"];
    self.sprite.anchorPoint = ccp(0,0);
    [self setContentSize:CGSizeMake(100, 100)];
    [self addChild:self.sprite];

但是,当渲染场景时,我看到了这一点(CCSprite 是周围带有白色背景的数字):

越野车 CCSprite

无论使用什么图像,都会发生这种情况。还有什么我需要做的吗?

4

1 回答 1

0

问题是 cocos2d 会自动附加-ipad到图像文件名,因为它来自相机胶卷,所以它不存在。我使用 [[CCFileUtils sharedFileUtils] setiPadSuffix:@""];.

我的应用程序中没有任何特定的 iPad 或视网膜特定文件,但对于那些有的,abica 在cocos2d 论坛上写了一个很好的方法,它展示了如何在每个文件的基础上处理这个问题。

于 2012-06-24T18:09:17.107 回答