龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

Cocos2d-x UI开发之CCControlSwitch控件类使用实例

时间:2014-09-12 03:10来源:网络整理 作者:网络 点击:
分享到:
这篇文章主要介绍了Cocos2d-x UI开发之CCControlSwitch控件类使用实例,本文代码中含大量注释讲解了CCControlSwitch控件类的使用,需要的朋友可以参考下

CCControlSwitch是开关按钮,关于控件使用时的一些配置,请参见文章:UI开发之控件类-CCControlButton。以下的演示中出现的key和value代表什么意思,知道的人说一声。

bool HelloWorld::init()
{
  bool bRet = false;
  do
  {

    CC_BREAK_IF(! CCLayer::init());

		//参数就不说了,看一下你的资源文件就明白了
		CCControlSwitch * controlSwitch = CCControlSwitch::create(
			CCSprite::create("extensions/switch-mask.png"),
			CCSprite::create("extensions/switch-on.png"),
			CCSprite::create("extensions/switch-off.png"),
			CCSprite::create("extensions/switch-thumb.png"),
			CCLabelTTF::create("On", "Arial-BoldMT", 16),
			CCLabelTTF::create("Off", "Arial-BoldMT", 16));

		//设置位置
		controlSwitch->setPosition(ccp(240,160));

		//这个函数对应初始时,开关的状态是开还是关。
		controlSwitch->setOn(true);
		//这个函数对应开关能否使用。
		controlSwitch->setEnabled(true);

		//添加事件监听
		controlSwitch->addTargetWithActionForControlEvents(this,cccontrol_selector(HelloWorld::valueChanged),
			CCControlEventValueChanged);

		this->addChild(controlSwitch);

    bRet = true;
  } while (0);

  return bRet;
}

void HelloWorld::valueChanged(CCObject * pSender,CCControlEvent controlEvent)
{
	CCControlSwitch * controlSwitch = (CCControlSwitch *)pSender;
	CCLog("click");
}
精彩图集

赞助商链接