//更换精灵CCSprite的图片有两种方式。

//直接通过图片更换

//使用setTexture(CCTexture2D*)函数,可以重新设置精灵类的纹理图片。

//

auto bg = Sprite::create();

Texture2D* texture = Director::getInstance()->getTextureCache()->addImage("bg2.png");

bg->setTexture(texture);

//

//2、通过缓存帧替换

//使用setDisplayFrame(CCSpriteFrame*)函数,利用精灵帧更换精灵图片。

//

//加载plist文件到缓存

SpriteFrameCache::getInstance()->addSpriteFramesWithFile("bg_0.plist");

//使用精灵帧,创建精灵

Sprite* bga = Sprite::createWithSpriteFrameName("bg1.png");

//更换精灵图片

SpriteFrame* frame = SpriteFrameCache::getInstance()->getSpriteFrameByName("bg2.png");

bga->setSpriteFrame(frame);

//

/*//加载合成的图片

CCSpriteBatchNode *spriteBatch=CCSpriteBatchNode::batchNodeWithFile("********.png");

this->addChild(spriteBatch);

//加载plist

CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("myconfig.plist");

// 生成Sprite

CCSprite *headSprite=CCSprite::spriteWithSpriteFrameName("aaa.png");

//需要更换图片时

CCSpriteFrame *frame=CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("bbb.png");

headSprite->setDisplayFrame(frame);

*/

  1. // 首先载入贴图集
  2. CCSpriteBatchNode *spriteBatch=CCSpriteBatchNode::batchNodeWithFile("snake.png");
  3. this->addChild(spriteBatch);
  4. CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("snake.plist");
  5. // 生成Sprite
  6. CCSprite *headSprite=CCSprite::spriteWithSpriteFrameName("headup.png");
  7. //需要更换图片时
  8. CCSpriteFrame *frame=CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("headleft.png");
  9. headSprite->setDisplayFrame(frame);
  1. CCSprite *my_hero = CCSprite::create("hero_a.png");
  2. CCTexture2D *hero_hit;
  3. CCSprite * temp_obj = CCSprite::create("hero_hit.png");
  4. hero_hit = temp_obj->getTexture();
  5. //改变my_hero的图片
  6. my_hero->stopAllActions();
  7. my_hero->setTexture(hero_hit);

cocos2dx 3.x(动态改变精灵的背景图片)的更多相关文章

  1. 【转】UGUI之用脚本动态的改变Button的背景图片 和 颜色

    http://blog.csdn.net/u014771617/article/details/45102701 public Button button;void Start(){ColorBloc ...

  2. 【android】listview改变选中行背景图片

    [android]listview改变选中行背景图片 目标:当item选中时,改变其背景图片.效果图如下: 直接在listview的xml文件中使用listselector: 1 2 3 4 5 6 ...

  3. VS2010,MFC动态按钮和窗体背景图片,以及是静态文字控件透明,并避免静态文字刷新出现的重叠问题

    1.动态按钮的四种动作 1)正常 2)按下 3)滑过 4)失效 在MFC中,4个动作对应着四种位图bmp, 首先,将代表四种状态的位图加载入资源中,将对应的按钮设置为BitmapButton 第二,在 ...

  4. Android使用属性动画ValueAnimator动态改变SurfaceView的背景颜色

    以下是主要代码,难点和疑问点都写在注释中: /** * 开始背景动画(此处为属性动画) */ private void startBackgroundAnimator(){ /* *参数解释: *ta ...

  5. 通过渲染改变tabBarItem的背景图片

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #703daa } p.p2 { margin: 0.0px 0. ...

  6. android 项目中设置背景图片

    xml文件设置背景图片中:任意一个控件,button imageView 或layout,在其的xml属性设置中,添加 [XML] view plaincopy android:background= ...

  7. Qt5:随窗口大小变化背景图片自动缩放的实现

    在窗口程序中,当我们改变窗口大小的时候,背景图片通常会岁窗口大小变化而缩放 然而,在我们写的窗口程序中,设置背景图片后,如果缩放大小,会看到背景图片并不会随之缩放, 应为这需要特殊处理,一般常用的方法 ...

  8. Javascript技巧实例精选(1)—鼠标选择动态改变网页背景颜色

    >>点击这里下载html源文件代码<< 采用Javascript实现,用鼠标点击相应颜色,动态改变网页背景颜色 这是截图 相应的Javascript源代码为: var hex ...

  9. EasyUI/TopJUI之如何动态改变下拉列表框ComboBox输入框的背景颜色

    简单记录一下 前段时间接到客户需求:动态改变下拉列表框ComboBox输入框的背景颜色. 刚开始想的很简单在用户选择列表项的时候,判断一下列表框的value值添加相应的背景颜色就OK了,然而在实际操作 ...

随机推荐

  1. bzoj 1217 [HNOI2003]消防局的设立 Label:图论

    题目描述 2020年,人类在火星上建立了一个庞大的基地群,总共有n个基地.起初为了节约材料,人类只修建了n-1条道路来连接这些基地,并且每两个基地都能够通过道路到达,所以所有的基地形成了一个巨大的树状 ...

  2. The beatles-Yesterday

    轉載自https://www.youtube.com/watch?v=XNnaxGFO18o Yesterday Lyrics:Paul Mccartney Music:Paul Mccartney ...

  3. linux pidof

    转载:http://blog.51osos.com/linux/linux-pidof-command/ 什么是pidof命令? #man pidof中的解释: pidof — find the pr ...

  4. Debug与Release的区别

    Debug版本包括调试信息,所以要比Release版本大很多(可能大数百K至数M).至于是否需要DLL支持,主要看你采用的编译选项.如果是基于ATL的,则Debug和Release版本对DLL的要求差 ...

  5. Java 异常讲解(转)

    六种异常处理的陋习 你觉得自己是一个Java专家吗?是否肯定自己已经全面掌握了Java的异常处理机制?在下面这段代码中,你能够迅速找出异常处理的六个问题吗?   1 OutputStreamWrite ...

  6. Struts2中重定向和请求转发配置

    struts2中默认跳转为dispatcher请求转发 只能往jsp转发,跳转action报404 重定向 设置为redirect ,可以是jsp也可以是action <!--同一个包下的act ...

  7. getPos封装

    <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...

  8. .net 文件下载【转】

    方式一:TransmitFile实现下载.将指定的文件直接写入 HTTP 响应输出流,而不在内存中缓冲该文件.     protected void Button1_Click(object send ...

  9. centos下安装mysql遇到的问题

    我前边遇到的坎,竟然和这篇百度经验惊人的相似,他帮我大忙了,十分感谢作者啊,连接双手奉上http://jingyan.baidu.com/article/ce436649fec8533773afd38 ...

  10. 演示save point及自治事务的用处

    1.确认数据库版本 2 举一个例子,说明save point的用处,给出SQL演示. 2.1环境准备 save point的作用是通过在事务中间设置检查点,可以更加精细的控制事务,防止一部分操作错误而 ...