我对此问题非常头疼,我正在使用这些代码捕获屏幕的一部分
-(UIImage *) glToUIImage {
userphotoCount++;
[CCDirector sharedDirector].nextDeltaTimeZero = YES;
CGSize winSize = [CCDirector sharedDirector].winSize;
CCLayerColor* whitePage = [CCLayerColor layerWithColor:ccc4(255, 255, 255, 0) width:winSize.width height:winSize.height];
whitePage.position = ccp(winSize.width/2, winSize.height/2);
CCRenderTexture* rtx = [CCRenderTexture renderTextureWithWidth:815 height:532];
[rtx begin];
[whitePage visit];
[[[CCDirector sharedDirector] runningScene] visit];
[rtx end];
return [rtx getUIImageFromBuffer];
}
我可以通过
获取我的UIImageimage = [self glToUIImage];
然后我尝试使用此代码通过UIImage生成精灵
-(void) ImageSprite{
image = [self glToUIImage];
userAns = [CCSprite spriteWithCGImage:image.CGImage key:[NSString stringWithFormat:@"photoCap%d.png", userphotoCount]];
userAns.position=ccp(780,410);
userAns.scale=0.6;
[self addChild:userAns z:20];
}
我可以在第一时间通过这些代码获取图像,但是在我更改了屏幕内容并使用这些代码生成带有新内容的新精灵(新UIImage)后,我失败了....图像没有' t改为新形象...
每次运行“imageSprite”代码时,如何获取新的图像精灵?
答案 0 :(得分:0)
您可以获取新的图片精灵,但您必须更改密钥
[CCSprite spriteWithCGImage:image.CGImage键:键];