我需要设置一个按钮的精灵框架.
I need to set the sprite frame of a button.
当我使用它的构造函数时:
When I use the constructor it's working:
CCSprite *sprite = [CCSprite spriteWithImageNamed:@"but.png"];
CCButton *button = [CCButton buttonWithTitle:@"" spriteFrame:sprite.spriteFrame];
[button setBlock:^(id sender){...}]
但是当我需要在之后设置精灵帧时,
But when I need to set the sprite frame afterwards,
CCButton *button = [CCButton buttonWithTitle:@""];
button.background.spriteFrame = sprite.spriteFrame;
或者这个
[button setBackgroundSpriteFrame:sprite.spriteFrame forState:CCControlStateNormal];
两者都不起作用,结果是图像失真,回调函数或块没有被调用.
both are not working, the result is a distorted image, and the callback function or block is not called.
您好,我遇到了同样的问题并找到了解决方案.就这样做吧:
Hi there I had the same problem and found a solution. Just do it like this:
CCSpriteFrame *spriteFrame = [CCSpriteFrame frameWithImageNamed:@"Icon-Small.png"];
button = [CCButton buttonWithTitle:@"" spriteFrame:spriteFrame];
像魅力一样工作!
这篇关于cocos2d 3.x CCButton 设置精灵帧图像扭曲和回调/块不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!