#pragma once
#include "cocos2d.h"
USING_NS_CC;
class MenuItemImage_single
:public CCMenuItemImage
{
public:
MenuItemImage_single(void);
~MenuItemImage_single(void);
static MenuItemImage_single* create( const char *ImageFilename_back,CCObject* target,SEL_MenuHandler selector);
void update(float dt);
static void initSpritePosition(float x ,float y);
static CCSprite* clickingSprite;
protected:
bool init();
private:
};
//重新包装 纹理按钮 加入一个成员 ——静态单例精灵 //单例仅仅对类来说 生成的类对象唯一 别搞混 静态精灵即可
//此精灵会在按下按钮调用回调同时设置自己的位置
//若干个这样的按钮就组成了 单选按钮群
//可以用setenable做
—————————————————————————————————————————————————————————————————————————————
#include "menuItemImage_single.h"
MenuItemImage_single::MenuItemImage_single(void)
{
}
MenuItemImage_single::~MenuItemImage_single(void)
{
}
MenuItemImage_single* MenuItemImage_single::create( const char *ImageFilename_back,CCObject* target,SEL_MenuHandler selector)
{
MenuItemImage_single *pRet = new MenuItemImage_single();
if (pRet && pRet->init() && pRet->initWithNormalImage(ImageFilename_back, ImageFilename_back, NULL, target, selector))
{
pRet->autorelease();
return pRet;
}
CC_SAFE_DELETE(pRet);
return NULL;
}
void MenuItemImage_single::update(float dt)
{
if(m_bIsSelected)
{
clickingSprite->setPosition( getPosition() );
}
}
void MenuItemImage_single::initSpritePosition(float x ,float y)
{
clickingSprite->setPositionX(x);
clickingSprite->setPositionY(y);
}
bool MenuItemImage_single::init()
{
CCMenuItemImage::init();
clickingSprite = CCSprite::create("payMoney/Switch2_off.png"); //类外通过类名
clickingSprite->_setZOrder(1);
this->scheduleUpdate();
return true;
}
CCSprite* MenuItemImage_single::clickingSprite = NULL; //CCSprite::create("payMoney/Switch2_on");
——————————————————————————————————————————————————————————————
MenuItemImage_single* botton_1 = MenuItemImage_single::create("payMoney/Switch2_on.png",this,menu_selector(PayMoney::onPay_1));
botton_1->setPosition(CCPoint(-205,730));
MenuItemImage_single* botton_2 = MenuItemImage_single::create("payMoney/Switch2_on.png",this,menu_selector(PayMoney::onPay_2));
botton_2->setPosition(CCPoint(-205,630));
MenuItemImage_single* botton_3 = MenuItemImage_single::create("payMoney/Switch2_on.png",this,menu_selector(PayMoney::onPay_3));
botton_3->setPosition(CCPoint(-205,528));
MenuItemImage_single* botton_4 = MenuItemImage_single::create("payMoney/Switch2_on.png",this,menu_selector(PayMoney::onPay_4));
botton_4->setPosition(CCPoint(-205,425));
MenuItemImage_single* botton_5 = MenuItemImage_single::create("payMoney/Switch2_on.png",this,menu_selector(PayMoney::onPay_5));
botton_5->setPosition(CCPoint(-205,322));
CCMenu* menu = CCMenu::create(botton_1,botton_2,botton_3,botton_4,botton_5,button_Close,button_Pay,NULL);
menu->setPosition( 0 ,0); //1、怎么才能随意设 ??坐标系变换
MenuItemImage_single::initSpritePosition(-205,730);
layer->addChild(MenuItemImage_single::clickingSprite);//2、。。。。
layer->addChild(menu);