auto background = Sprite::create("background.png");
background->setPosition(Vec2(visibleSize.width / 2, visibleSize.height / 2));
Size backgroundSize = background->getContentSize();
ScrollView * scrollview = ScrollView::create();
//激活反弹,拉过之后可以弹回来
scrollview->setBounceEnabled(true);
//设置锚点
scrollview->setAnchorPoint(Vec2::ZERO);
//设置滚动方向为水平方向
scrollview->setDirection(ScrollView::Direction::HORIZONTAL);
//设置scrollview的size和背景一致
scrollview->setContentSize(backgroundSize);
//设置滚动层容器的内部容器大小
scrollview->setInnerContainerSize(scrollview->getContentSize());
//设置滚动层容器坐标
scrollview->setPosition(Vec2((visibleSize.width - backgroundSize.width) / 2 + (backgroundSize.width - scrollview->getContentSize().width) / 2,
(visibleSize.height - backgroundSize.height) / 2 + (backgroundSize.height - scrollview->getContentSize().height / 2)));
this->addChild(scrollview);
//创建一个button
auto button = Button::create("button.png", "bnuttonpress.png");
button->setScale9Enabled(true);
button->setContentSize(Size(100.0f, button->getVirtualRendererSize().height));
button->setPosition(Vec2(100,100));
scrollview->addEventListener([=](Ref * pSender, ScrollView::EventType type){
switch (type)
{
case cocos2d::ui::ScrollView::EventType::SCROLL_TO_TOP:
break;
case cocos2d::ui::ScrollView::EventType::SCROLL_TO_BOTTOM:
break;
case cocos2d::ui::ScrollView::EventType::SCROLL_TO_LEFT:
break;
case cocos2d::ui::ScrollView::EventType::SCROLL_TO_RIGHT:
break;
case cocos2d::ui::ScrollView::EventType::SCROLLING:
break;
case cocos2d::ui::ScrollView::EventType::BOUNCE_TOP:
break;
case cocos2d::ui::ScrollView::EventType::BOUNCE_BOTTOM:
break;
case cocos2d::ui::ScrollView::EventType::BOUNCE_LEFT:
break;
case cocos2d::ui::ScrollView::EventType::BOUNCE_RIGHT:
break;
case cocos2d::ui::ScrollView::EventType::CONTAINER_MOVED:
break;
default:
break;
}
});
scrollview->addChild(button);