Size winSize = Director::getInstance()->getVisibleSize();
Layout* _verticalLayout = cocos2d::ui::VBox::create();//水平布局
_verticalLayout->setPosition(Vec2(winSize.width / 2 - 80,winSize.height - 70));
Layer* _uiLayer = Layer::create();
_uiLayer->addChild(_verticalLayout);
_verticalLayout->setScale(0.5);
_verticalLayout->setFocused(true);
_verticalLayout->setLoopFocus(true);
_verticalLayout->setTag(100);
//_firstFocusedWidget = _verticalLayout;
int count1 = 1;
for (int i = 0; i<count1; ++i) {
ImageView *w = ImageView::create("scrollviewbg.png");
w->setAnchorPoint(Vec2::ZERO);
w->setTouchEnabled(true);
w->setScaleX(2.5);
w->setTag(i + count1);
w->addTouchEventListener(CC_CALLBACK_2(HelloWorld::onImageViewClicked,this));
_verticalLayout->addChild(w);
}
//add HBox into VBox
HBox *hBox = HBox::create();//垂直布局
hBox->setScale(0.8f);
hBox->setTag(101);
_verticalLayout->addChild(hBox);
int count2 = 2;
for (int i = 0; i < count2; ++i) {
ImageView *w = ImageView::create("scrollviewbg.png");
w->setAnchorPoint(Vec2(0,1));
w->setScaleY(2.0);
w->setTouchEnabled(true);
w->setTag(i + count1 + count2);
w->addTouchEventListener(CC_CALLBACK_2(HelloWorld::onImageViewClicked,this));
hBox->addChild(w);
}
VBox *innerVBox = VBox::create();
hBox->addChild(innerVBox);//水平布局中加入垂直布局
innerVBox->setTag(102);
// innerVBox->setPassFocustochild(false);
// innerVBox->setFocusEnabled(false);
int count3 = 2;
for (int i = 0; i<count3; ++i) {
ImageView *w = ImageView::create("scrollviewbg.png");
w->setTouchEnabled(true);
w->setTag(i + count1 + count2 + count3);
w->addTouchEventListener(CC_CALLBACK_2(HelloWorld::onImageViewClicked,this));
innerVBox->addChild(w);
}
this->addChild(_verticalLayout);
return true;
}
void HelloWorld::onImageViewClicked(cocos2d::Ref *ref,cocos2d::ui::Widget::TouchEventType touchType) { if (touchType == cocos2d::ui::Widget::TouchEventType::ENDED) { cocos2d::ui::Widget *w = (cocos2d::ui::Widget*)ref; if (w->isFocusEnabled()) { w->setFocusEnabled(false); w->setColor(Color3B::YELLOW); } else{ w->setFocusEnabled(true); w->setColor(Color3B::WHITE); } } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。