Quick cocos2dx容器層的使用

2022-09-02 10:27:11 字數 1930 閱讀 8808

本文**於:

gui 控制項我們大致可以分為兩類,**普通控制項** 和容器控制項,普通控制項指的是一些常用的控制項,如 uibutton,uilabel,uislider 和 uitextfield 等控制項,而容器控制項如 uilayout,uiscrollview,uilistview,uipageview 等,這些容器控制項都有乙個特點,它可以作為容器,包含其它控制項,雖然所有的控制項都能夠包含其它控制項,但有些控制項的職責非常單一,如按鈕標籤等,並不經常向其新增其它控制項。以下詳細介紹容器控制項的使用方法。

panel 作為最主要的容器層,前面我們說過,由 cocostudio ui 編輯器所建立的 ui 是基於 panel 來布局的,要想熟練的使用 ui 控制項,了解 panel 以及其屬性也是重中之重,既然是容器,容器裡面總得有些內容了,panel 對應得控制項名稱為 uilayout。

size widgetsize = m_pwidget->getsize();

uilayout *background = dynamic_cast(m_puilayer->getwidgetbyname("background_panel"));

// create the layout

uilayout* layout = uilayout::create();

layout->setsize(size(280, 150));

size backgroundsize = background->getsize();

layout->setposition(point((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("cocosgui/animationbuttonnormal.png", "cocosgui/animationbuttonpressed.png", "");

button->setposition(point(button->getsize().width / 2, layout->getsize().height - button->getsize().height / 2));

layout->addchild(button);

uibutton* textbutton = uibutton::create();

textbutton->settouchenabled(true);

textbutton->loadtextures("cocosgui/backtotopnormal.png", "cocosgui/backtotoppressed.png", "");

textbutton->settitletext("text button");

textbutton->setposition(point(layout->getsize().width / 2, layout->getsize().height / 2));

layout->addchild(textbutton);

uibutton* button_scale9 = uibutton::create();

button_scale9->settouchenabled(true);

button_scale9->loadtextures

QUICK COCOS2DX建立新專案

建立新專案之前,確保已經正確設定了quick cocos2dx root環境變數 啟動 終端 應用程式,然後進入需要放置新專案的目錄 cd desktop執行create project.sh命令,並指定專案的 package name quick cocos2dx root bin create ...

quick cocos2d x的Image使用方法

image的使用方法相對簡單。quick cocos2d x中可以指定該image是否使用9宮圖來進行渲染。不使用9宮格的image建立 local img cc.ui.uiimage.new test.png 使用9宮格的image建立 local img cc.ui.uiimage.new te...

Quick Cocos2d x 觸控機制詳解

cocos2d x 原本的觸控機制存在一些限制,在使用中需要開發者做不少額外的處理。而且 cocos2d x 的觸控事件是按照目標的優先順序來分派的,而不是按照目標的顯示層級來分派。針對這個問題,quick cocos2d x 提出了自己的一套觸控機制。本文詳細介紹了這套新機制的實現原理和用法。以下...