cocos2d 3.x CCButton 设置精灵帧图像扭曲和回调/块不起作用 [英] cocos2d 3.x CCButton set the sprite frame image distorted and callback/block not working

查看:12
本文介绍了cocos2d 3.x CCButton 设置精灵帧图像扭曲和回调/块不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要设置一个按钮的精灵框架.

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 设置精灵帧图像扭曲和回调/块不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆