PuzzleSDK
UIFocusTestHorizontal类 参考

#include <UIFocusTest.h>

+ 类 UIFocusTestHorizontal 继承关系图:
+ UIFocusTestHorizontal 的协作图:

Public 成员函数

 CREATE_FUNC (UIFocusTestHorizontal)
 
 UIFocusTestHorizontal ()
 
virtual ~UIFocusTestHorizontal ()
 
virtual bool init () override
 
void toggleFocusLoop (cocos2d::Ref *, cocos2d::ui::Widget::TouchEventType)
 
- Public 成员函数 继承自 UIFocusTestBase
 UIFocusTestBase ()
 
virtual ~UIFocusTestBase ()
 
virtual void onLeftKeyPressed ()
 
virtual void onRightKeyPressed ()
 
virtual void onUpKeyPressed ()
 
virtual void onDownKeyPressed ()
 
virtual void onFocusChanged (cocos2d::ui::Widget *widgetLostFocus, cocos2d::ui::Widget *widgetGetFocus)
 
void onImageViewClicked (cocos2d::Ref *ref, cocos2d::ui::Widget::TouchEventType touchType)
 
- Public 成员函数 继承自 UIScene
 UIScene ()
 
 ~UIScene ()
 
virtual void onEnter () override
 
- Public 成员函数 继承自 TestCase
 TestCase ()
 
 ~TestCase ()
 
virtual std::string title () const
 
virtual std::string subtitle () const
 
virtual Type getTestType () const
 
virtual float getDuration () const
 
virtual std::string getExpectedOutput () const
 
virtual std::string getActualOutput () const
 
virtual void restartTestCallback (cocos2d::Ref *sender)
 
virtual void nextTestCallback (cocos2d::Ref *sender)
 
virtual void priorTestCallback (cocos2d::Ref *sender)
 
virtual void onBackCallback (cocos2d::Ref *sender)
 
void setTestSuite (TestSuite *testSuite)
 
TestSuitegetTestSuite () const
 
float getRunTime () const
 
void setTestCaseName (const std::string &name)
 
std::string getTestCaseName () const
 
const cocos2d::Label * getSubtitleLable () const
 
const cocos2d::MenuItemImage * getRestartTestItem () const
 

Protected 属性

cocos2d::ui::Layout * _horizontalLayout
 
cocos2d::ui::Text * _loopText
 
- Protected 属性 继承自 UIFocusTestBase
cocos2d::Menu * _dpadMenu
 
cocos2d::ui::Widget * _firstFocusedWidget
 
cocos2d::EventListenerFocus * _eventListener
 
cocos2d::ui::Button * _toggleButton
 
- Protected 属性 继承自 UIScene
cocos2d::Layer * _uiLayer
 
cocos2d::ui::Layout * _widget
 
cocos2d::ui::Text * _sceneTitle
 
- Protected 属性 继承自 TestCase
cocos2d::MenuItemImage * _priorTestItem
 
cocos2d::MenuItemImage * _restartTestItem
 
cocos2d::MenuItemImage * _nextTestItem
 
cocos2d::Label * _titleLabel
 
cocos2d::Label * _subtitleLabel
 

额外继承的成员函数

- Public 类型 继承自 TestCase
enum class  Type { ROBUSTNESS , UNIT , GRAPHICAL_STATIC , MANUAL }
 
- Public 属性 继承自 TestCase
CC_CONSTRUCTOR_ACCESS __pad0__: virtual bool init() override
 

详细描述

在文件 UIFocusTest.h63 行定义.

构造及析构函数说明

◆ UIFocusTestHorizontal()

UIFocusTestHorizontal::UIFocusTestHorizontal ( )

在文件 UIFocusTest.cpp170 行定义.

171{
172
173}

◆ ~UIFocusTestHorizontal()

UIFocusTestHorizontal::~UIFocusTestHorizontal ( )
virtual

在文件 UIFocusTest.cpp175 行定义.

176{
177
178}

成员函数说明

◆ CREATE_FUNC()

UIFocusTestHorizontal::CREATE_FUNC ( UIFocusTestHorizontal  )

◆ init()

bool UIFocusTestHorizontal::init ( )
overridevirtual

重载 UIFocusTestBase .

在文件 UIFocusTest.cpp180 行定义.

181{
182 if (UIFocusTestBase::init()) {
183
184 Size winSize = Director::getInstance()->getVisibleSize();
185
186 _horizontalLayout = HBox::create();
187 _horizontalLayout->setPosition(Vec2(20.0f, winSize.height/2 + 40));
188 _uiLayer->addChild(_horizontalLayout);
189
190 _horizontalLayout->setFocused(true);
191 _horizontalLayout->setLoopFocus(true);
192 _horizontalLayout->setTag(100);
194
195 int count = 3;
196 for (int i=0; i<count; ++i) {
197 ImageView *w = ImageView::create("cocosui/scrollviewbg.png");
198 w->setTouchEnabled(true);
199 w->setTag(i);
200 w->addTouchEventListener(CC_CALLBACK_2(UIFocusTestHorizontal::onImageViewClicked, this));
201 _horizontalLayout->addChild(w);
202 }
203
204 _loopText = Text::create("loop enabled", "Arial", 20);
205 _loopText->setPosition(Vec2(winSize.width/2, winSize.height - 50));
206 _loopText->setColor(Color3B::GREEN);
207 this->addChild(_loopText);
208
209 _toggleButton->addTouchEventListener(CC_CALLBACK_2(UIFocusTestHorizontal::toggleFocusLoop,this));
210
211 return true;
212 }
213 return false;
214}
cocos2d::ui::Widget * _firstFocusedWidget
Definition: UIFocusTest.h:58
virtual bool init() override
Definition: UIFocusTest.cpp:57
void onImageViewClicked(cocos2d::Ref *ref, cocos2d::ui::Widget::TouchEventType touchType)
cocos2d::ui::Button * _toggleButton
Definition: UIFocusTest.h:60
void toggleFocusLoop(cocos2d::Ref *, cocos2d::ui::Widget::TouchEventType)
cocos2d::ui::Layout * _horizontalLayout
Definition: UIFocusTest.h:76
cocos2d::ui::Text * _loopText
Definition: UIFocusTest.h:77
cocos2d::Layer * _uiLayer
Definition: UIScene.h:44

引用了 UIFocusTestBase::_firstFocusedWidget, _horizontalLayout, _loopText, UIFocusTestBase::_toggleButton, UIScene::_uiLayer, UIFocusTestBase::init(), UIFocusTestBase::onImageViewClicked() , 以及 toggleFocusLoop().

+ 函数调用图:

◆ toggleFocusLoop()

void UIFocusTestHorizontal::toggleFocusLoop ( cocos2d::Ref *  ,
cocos2d::ui::Widget::TouchEventType   
)

在文件 UIFocusTest.cpp219 行定义.

220{
221 if (type == Widget::TouchEventType::ENDED) {
222 _horizontalLayout->setLoopFocus(!_horizontalLayout->isLoopFocus());
223 if (_horizontalLayout->isLoopFocus()) {
224 _loopText->setString("loop enabled");
225 }else{
226 _loopText->setString("loop disabled");
227 }
228 }
229}

引用了 _horizontalLayout , 以及 _loopText.

被这些函数引用 init().

+ 这是这个函数的调用关系图:

类成员变量说明

◆ _horizontalLayout

cocos2d::ui::Layout* UIFocusTestHorizontal::_horizontalLayout
protected

在文件 UIFocusTest.h76 行定义.

被这些函数引用 init() , 以及 toggleFocusLoop().

◆ _loopText

cocos2d::ui::Text* UIFocusTestHorizontal::_loopText
protected

在文件 UIFocusTest.h77 行定义.

被这些函数引用 init() , 以及 toggleFocusLoop().


该类的文档由以下文件生成: