adsense



[cocos2d-x] ui 컴포넌트(Slider, CheckBox) 고유의 이벤트

슬라이더의 슬라이드 변경값을 실시간으로 체크하기

- gitbook의 용례를 보면 터치이벤트리스너를 사용하고 있는데, 이렇게 하면 슬라이드를 움직이고 있는 동안 값이 실시간으로 들어오지 않습니다.

- 슬라이드를 움직이는 동안 값을 계속 체크하려면 슬라이더 이벤트 리스너를 사용하는데, 3.17.x 이전 버전과 4.0에서 기술법이 크게 바뀌어서 정리해 둡니다.



//3.17.x under
{
auto slider = Slider::create();
slider->loadBarTexture(/*base texture*/);
slider->loadProgressBarTexture(/*progress texture*/);
slider->loadSlidBallTextures(/*ball normal, ball touched, bal disable, Widget::TextureResType*/);
slider->setPosition(/*Vec2*/);
addChild(slider);
 
slider->addEventListenerSlider(this, sliderpercentchangedselector(HelloWorld::changeSlider));
}
 
void HelloWorld::changeSlider(Ref* sender, SliderEventType type)
{
Slider* node = dynamic_cast<Slider*>(sender);
if (type == SliderEventType::SLIDER_PERCENTCHANGED)
{
float value = node->getPercent();
}
}
 
//4.0 over
{
auto slider = Slider::create();
slider->loadBarTexture(/*base texture*/);
slider->loadProgressBarTexture(/*progress texture*/);
slider->loadSlidBallTextures(/*ball normal, ball touched, bal disable, Widget::TextureResType*/);
slider->setPosition(/*Vec2*/);
addChild(slider);
 
slider->addEventListener((ui::Slider::ccSliderCallback)CC_CALLBACK_2(HelloWorld::changeSlider, this));//<-여기
}
 
void HelloWorld::changeSlider(Ref* sender, ui::Slider::EventType type)//<-여기
{
Slider* node = dynamic_cast<Slider*>(sender);
if (type == ui::Slider::EventType::ON_PERCENTAGE_CHANGED)//<-여기가 다르다
{
float value = node->getPercent();
}
}
 
 
체크박스도 비슷
3.17.x
checkbox->addEventListenerCheckBox(this, checkboxselectedeventselector(HelloWorld::clickCheck));
~
void HelloWorld::clickCheck(Ref* sender, CheckBoxEventType type)
 
4.0
checkbox->addEventListener((ui::CheckBox::ccCheckBoxCallback)CC_CALLBACK_2(HelloWorld::clickCheck, this));
~
void HelloWorld::clickCheck(Ref* sender, ui::CheckBox::EventType type)
 



덧글

댓글 입력 영역


Books

Geek라이프

메가 드라이브 퍼펙트 카탈로그
마에다 히로유키 저/조기현 역

미소녀 일러스트 테크닉
B-은하, pen스케, 카와이 저/정유진 역

핵심강좌! Cocos2d-x
이재환 저

피규어의 교과서 레진 키트 & 도색 입문 편
후지타 시게토시 저/김정규 역
예스24 | 애드온2
일본서적 전문사이트 NEPIC