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

查看:191
本文介绍了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){...}]

但是当我需要设置

    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天全站免登陆