bool UILayoutTest_Layout_Relative_Align_Parent::init() { if (UIScene::init()) { CCSize widgetSize = m_pWidget->getSize(); // Add the alert UILabel* alert = UILabel::create(); alert->setText("Layout Relative Align Parent"); alert->setFontName("Marker Felt"); alert->setFontSize(20); alert->setColor(ccc3(159, 168, 176)); alert->setPosition(ccp(widgetSize.width / 2.0f, widgetSize.height / 2.0f - alert->getSize().height * 4.5)); m_pUiLayer->addWidget(alert); Layout* background = dynamic_cast<Layout*>(m_pUiLayer->getWidgetByName("background_Panel")); // Create the layout Layout* layout = Layout::create(); layout->setLayoutType(LAYOUT_RELATIVE); layout->setSize(CCSizeMake(280, 150)); layout->setBackGroundColorType(LAYOUT_COLOR_SOLID); layout->setBackGroundColor(ccGREEN); CCSize backgroundSize = background->getSize(); layout->setPosition(ccp((widgetSize.width - backgroundSize.width) / 2 + (backgroundSize.width - layout->getSize().width) / 2, (widgetSize.height - backgroundSize.height) / 2 + (backgroundSize.height - layout->getSize().height) / 2)); m_pUiLayer->addWidget(layout); // top left UIButton* button_TopLeft = UIButton::create(); button_TopLeft->setTouchEnabled(true); button_TopLeft->loadTextures("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png", ""); layout->addChild(button_TopLeft); UIRelativeLayoutParameter* rp_TopLeft = UIRelativeLayoutParameter::create(); rp_TopLeft->setAlign(RELATIVE_ALIGN_PARENT_TOP_LEFT); button_TopLeft->setLayoutParameter(rp_TopLeft); // top center horizontal UIButton* button_TopCenter = UIButton::create(); button_TopCenter->setTouchEnabled(true); button_TopCenter->loadTextures("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png", ""); layout->addChild(button_TopCenter); UIRelativeLayoutParameter* rp_TopCenter = UIRelativeLayoutParameter::create(); rp_TopCenter->setAlign(RELATIVE_ALIGN_PARENT_TOP_CENTER_HORIZONTAL); button_TopCenter->setLayoutParameter(rp_TopCenter); // top right UIButton* button_TopRight = UIButton::create(); button_TopRight->setTouchEnabled(true); button_TopRight->loadTextures("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png", ""); layout->addChild(button_TopRight); UIRelativeLayoutParameter* rp_TopRight = UIRelativeLayoutParameter::create(); rp_TopRight->setAlign(RELATIVE_ALIGN_PARENT_TOP_RIGHT); button_TopRight->setLayoutParameter(rp_TopRight); // left center UIButton* button_LeftCenter = UIButton::create(); button_LeftCenter->setTouchEnabled(true); button_LeftCenter->loadTextures("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png", ""); layout->addChild(button_LeftCenter); UIRelativeLayoutParameter* rp_LeftCenter = UIRelativeLayoutParameter::create(); rp_LeftCenter->setAlign(RELATIVE_ALIGN_PARENT_LEFT_CENTER_VERTICAL); button_LeftCenter->setLayoutParameter(rp_LeftCenter); // center UIButton* buttonCenter = UIButton::create(); buttonCenter->setTouchEnabled(true); buttonCenter->loadTextures("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png", ""); layout->addChild(buttonCenter); UIRelativeLayoutParameter* rpCenter = UIRelativeLayoutParameter::create(); rpCenter->setAlign(RELATIVE_CENTER_IN_PARENT); buttonCenter->setLayoutParameter(rpCenter); // right center UIButton* button_RightCenter = UIButton::create(); button_RightCenter->setTouchEnabled(true); button_RightCenter->loadTextures("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png", ""); layout->addChild(button_RightCenter); UIRelativeLayoutParameter* rp_RightCenter = UIRelativeLayoutParameter::create(); rp_RightCenter->setAlign(RELATIVE_ALIGN_PARENT_RIGHT_CENTER_VERTICAL); button_RightCenter->setLayoutParameter(rp_RightCenter); // left bottom UIButton* button_LeftBottom = UIButton::create(); button_LeftBottom->setTouchEnabled(true); button_LeftBottom->loadTextures("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png", ""); layout->addChild(button_LeftBottom); UIRelativeLayoutParameter* rp_LeftBottom = UIRelativeLayoutParameter::create(); rp_LeftBottom->setAlign(RELATIVE_ALIGN_PARENT_LEFT_BOTTOM); button_LeftBottom->setLayoutParameter(rp_LeftBottom); // bottom center UIButton* button_BottomCenter = UIButton::create(); button_BottomCenter->setTouchEnabled(true); button_BottomCenter->loadTextures("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png", ""); layout->addChild(button_BottomCenter); UIRelativeLayoutParameter* rp_BottomCenter = UIRelativeLayoutParameter::create(); rp_BottomCenter->setAlign(RELATIVE_ALIGN_PARENT_BOTTOM_CENTER_HORIZONTAL); button_BottomCenter->setLayoutParameter(rp_BottomCenter); // right bottom UIButton* button_RightBottom = UIButton::create(); button_RightBottom->setTouchEnabled(true); button_RightBottom->loadTextures("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png", ""); layout->addChild(button_RightBottom); UIRelativeLayoutParameter* rp_RightBottom = UIRelativeLayoutParameter::create(); rp_RightBottom->setAlign(RELATIVE_ALIGN_PARENT_RIGHT_BOTTOM); button_RightBottom->setLayoutParameter(rp_RightBottom); return true; } return false; }
bool UILayoutTest_Layout_Linear_Horizontal::init() { if (UIScene::init()) { CCSize widgetSize = m_pWidget->getSize(); // Add the alert UILabel* alert = UILabel::create(); alert->setText("Layout Layout Linear Horizontal"); alert->setFontName("Marker Felt"); alert->setFontSize(20); alert->setColor(ccc3(159, 168, 176)); alert->setPosition(ccp(widgetSize.width / 2.0f, widgetSize.height / 2.0f - alert->getSize().height * 4.5)); m_pUiLayer->addWidget(alert); Layout* background = dynamic_cast<Layout*>(m_pUiLayer->getWidgetByName("background_Panel")); // Create the layout Layout* layout = Layout::create(); layout->setLayoutType(LAYOUT_LINEAR_HORIZONTAL); layout->setClippingEnabled(true); layout->setSize(CCSizeMake(280, 150)); CCSize backgroundSize = background->getSize(); layout->setPosition(ccp((widgetSize.width - backgroundSize.width) / 2 + (backgroundSize.width - layout->getSize().width) / 2, (widgetSize.height - backgroundSize.height) / 2 + (backgroundSize.height - layout->getSize().height) / 2)); m_pUiLayer->addWidget(layout); UIButton* button = UIButton::create(); button->setTouchEnabled(true); button->loadTextures("cocosui/animationbuttonnormal.png", "cocosui/animationbuttonpressed.png", ""); layout->addChild(button); UILinearLayoutParameter* lp1 = UILinearLayoutParameter::create(); button->setLayoutParameter(lp1); lp1->setGravity(LINEAR_GRAVITY_CENTER_VERTICAL); lp1->setMargin(UIMargin(0, 10, 0, 10)); UIButton* titleButton = UIButton::create(); titleButton->setTouchEnabled(true); titleButton->loadTextures("cocosui/backtotopnormal.png", "cocosui/backtotoppressed.png", ""); titleButton->setTitleText("Title Button"); layout->addChild(titleButton); UILinearLayoutParameter* lp2 = UILinearLayoutParameter::create(); titleButton->setLayoutParameter(lp2); lp2->setGravity(LINEAR_GRAVITY_CENTER_VERTICAL); lp2->setMargin(UIMargin(0, 10, 0, 10)); UIButton* button_scale9 = UIButton::create(); button_scale9->setTouchEnabled(true); button_scale9->loadTextures("cocosui/button.png", "cocosui/buttonHighlighted.png", ""); button_scale9->setScale9Enabled(true); button_scale9->setSize(CCSizeMake(100, button_scale9->getContentSize().height)); layout->addChild(button_scale9); UILinearLayoutParameter* lp3 = UILinearLayoutParameter::create(); button_scale9->setLayoutParameter(lp3); lp3->setGravity(LINEAR_GRAVITY_CENTER_VERTICAL); lp3->setMargin(UIMargin(0, 10, 0, 10)); return true; } return false; }