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

 更新时间:2020年4月25日 17:41  点击:1753

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");
}

[!--infotagslink--]

相关文章