先看代码
CCControlPotentiometer* potentiometer = CCControlPotentiometer::create(
"potentiometerTrack.png",
"potentiometerProgress.png",
"potentiometerButton.png");
potentiometer->setPosition(ccp(100, 200));
this->addChild(potentiometer);
一个音量按钮由三部分构成:底座、进度条、控制按钮
然后我觉得上面这段代码就不需要解释了~
还有要记住的就是添加监听器和监听事件
void HelloWorld::controlPotentiometerTest()
{
CCControlPotentiometer* potentiometer = CCControlPotentiometer::create(
"potentiometerTrack.png",
"potentiometerProgress.png",
"potentiometerButton.png");
potentiometer->setPosition(ccp(100, 200));
this->addChild(potentiometer);
/* 监听进度值改变事件 */
potentiometer->addTargetWithActionForControlEvents(this, cccontrol_selector(HelloWorld::onValueChange), CCControlEventValueChanged);
}
void HelloWorld::onValueChange( CCObject* pSender, CCControlEvent event )
{
CCControlPotentiometer* potentiometer = (CCControlPotentiometer* )pSender;
CCString* valueStr = CCString::createWithFormat("%f", potentiometer->getValue());
CCLOG(valueStr->getCString());
}
太好了,添加监听事件的方式和CCControlButton是一样的,只不过事件类型变成了CCControlEventValueChanged。
我们只需要在监听事件的回调函数里调用CCControlPotentiometer的getValue函数就可以获得当前音量按钮的音量值了