PuzzleSDK
UIEditBoxTestToggleVisibility类 参考

#include <UIEditBoxTest.h>

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

Public 成员函数

 CREATE_FUNC (UIEditBoxTestToggleVisibility)
 
virtual bool init () override
 
virtual void editBoxEditingDidBegin (cocos2d::ui::EditBox *editBox) override
 
virtual void editBoxTextChanged (cocos2d::ui::EditBox *editBox, const std::string &text) override
 
virtual void editBoxReturn (cocos2d::ui::EditBox *editBox) override
 
- 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::Label * _TTFShowEditReturn
 
cocos2d::ui::EditBox * _editName
 
cocos2d::ui::EditBox * _editPassword
 
cocos2d::ui::EditBox * _editEmail
 
cocos2d::Node * _editEmailParent
 
- 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
 

详细描述

在文件 UIEditBoxTest.h54 行定义.

成员函数说明

◆ CREATE_FUNC()

UIEditBoxTestToggleVisibility::CREATE_FUNC ( UIEditBoxTestToggleVisibility  )

◆ editBoxEditingDidBegin()

void UIEditBoxTestToggleVisibility::editBoxEditingDidBegin ( cocos2d::ui::EditBox *  editBox)
overridevirtual

在文件 UIEditBoxTest.cpp272 行定义.

273{
274 log("editBox %p DidBegin !", editBox);
275}

◆ editBoxReturn()

void UIEditBoxTestToggleVisibility::editBoxReturn ( cocos2d::ui::EditBox *  editBox)
overridevirtual

在文件 UIEditBoxTest.cpp282 行定义.

283{
284 log("editBox %p was returned !",editBox);
285
286 if (_editName == editBox)
287 {
288 _TTFShowEditReturn->setString("Name EditBox return !");
289 }
290 else if (_editPassword == editBox)
291 {
292 _TTFShowEditReturn->setString("Password EditBox return !");
293 }
294 else if (_editEmail == editBox)
295 {
296 _TTFShowEditReturn->setString("Email EditBox return !");
297 }
298}
cocos2d::ui::EditBox * _editName
Definition: UIEditBoxTest.h:68
cocos2d::Label * _TTFShowEditReturn
Definition: UIEditBoxTest.h:67
cocos2d::ui::EditBox * _editEmail
Definition: UIEditBoxTest.h:70
cocos2d::ui::EditBox * _editPassword
Definition: UIEditBoxTest.h:69

引用了 _editEmail, _editName, _editPassword , 以及 _TTFShowEditReturn.

◆ editBoxTextChanged()

void UIEditBoxTestToggleVisibility::editBoxTextChanged ( cocos2d::ui::EditBox *  editBox,
const std::string &  text 
)
overridevirtual

在文件 UIEditBoxTest.cpp277 行定义.

278{
279 log("editBox %p TextChanged, text: %s ", editBox, text.c_str());
280}

◆ init()

bool UIEditBoxTestToggleVisibility::init ( )
overridevirtual

重载 UIScene .

在文件 UIEditBoxTest.cpp176 行定义.

177{
178 if (UIScene::init())
179 {
180 auto glview = Director::getInstance()->getOpenGLView();
181 auto visibleOrigin = glview->getVisibleOrigin();
182 auto visibleSize = glview->getVisibleSize();
183
184 auto pBg = Sprite::create("Images/HelloWorld.png");
185 pBg->setPosition(Vec2(visibleOrigin.x+visibleSize.width/2, visibleOrigin.y+visibleSize.height/2));
186 addChild(pBg);
187
188 _TTFShowEditReturn = Label::createWithSystemFont("No edit control return!", "Arial", 30);
189 _TTFShowEditReturn->setPosition(Vec2(visibleOrigin.x+visibleSize.width/2, visibleOrigin.y + visibleSize.height - 50));
190 addChild(_TTFShowEditReturn);
191
192
193 auto editBoxSize = Size(visibleSize.width - 100, visibleSize.height * 0.1f);
194
195 // top
196 std::string pNormalSprite = "extensions/green_edit.png";
197 _editName = ui::EditBox::create(editBoxSize + Size(0,40), ui::Scale9Sprite::create(pNormalSprite));
198 _editName->setPosition(Vec2(visibleOrigin.x+visibleSize.width/2-50, visibleOrigin.y+visibleSize.height*3/4));
199 _editName->setFontColor(Color3B::RED);
200 _editName->setPlaceHolder("Name:");
201 _editName->setPlaceholderFontColor(Color3B::WHITE);
202 _editName->setMaxLength(8);
203 _editName->setFontSize((int)editBoxSize.height/2);
204 _editName->setText("v👐👊💝");
205 _editName->setReturnType(ui::EditBox::KeyboardReturnType::DONE);
206 _editName->setDelegate(this);
207 _editName->setVisible(true);
208 addChild(_editName);
209
210 Button* button = Button::create("cocosui/animationbuttonnormal.png",
211 "cocosui/animationbuttonpressed.png");
212 auto buttonSize = button->getContentSize();
213 button->setTitleText("Toggle Visibility");
214 button->setPosition(_editName->getPosition() + Vec2(editBoxSize.width/2 + buttonSize.width/2, 0.0f));
215 button->addClickEventListener([=](Ref* ref){
216 _editName->setVisible(!_editName->isVisible());
217 });
218 addChild(button);
219
220 // middle
221 _editPassword = ui::EditBox::create(editBoxSize, "extensions/orange_edit.png");
222 _editPassword->setPosition(Vec2(visibleOrigin.x+visibleSize.width/2-50, visibleOrigin.y+visibleSize.height/2));
223 _editPassword->setFontColor(Color3B::GREEN);
224 _editPassword->setPlaceHolder("Password:");
225 _editPassword->setMaxLength(6);
226 _editPassword->setInputFlag(ui::EditBox::InputFlag::PASSWORD);
227 _editPassword->setInputMode(ui::EditBox::InputMode::SINGLE_LINE);
228 _editPassword->setFontSize((float)editBoxSize.height/2);
229 _editPassword->setDelegate(this);
230 _editPassword->setVisible(true);
231 addChild(_editPassword);
232
233 auto buttonPassword = (ui::Button*)button->clone();
234 buttonPassword->setTitleText("Toggle Visibility");
235 buttonPassword->setPosition(_editPassword->getPosition() + Vec2(editBoxSize.width/2 + buttonSize.width/2, 0.0f));
236 buttonPassword->addClickEventListener([=](Ref* ref){
237 _editPassword->setVisible(!_editPassword->isVisible());
238 });
239 addChild(buttonPassword);
240
241 // bottom
242 // Add an intermediate Node to test scaling and content size relative to world
243 _editEmailParent = Node::create();
244 // _editEmailParent->setScale(0.5);
245 _editEmailParent->setPosition(Vec2(visibleOrigin.x+visibleSize.width/2-50, visibleOrigin.y+visibleSize.height/4));
246 addChild(_editEmailParent);
247
248 auto bottomButtonSize = Size(editBoxSize.width, editBoxSize.height + 10);
249 _editEmail = ui::EditBox::create(bottomButtonSize, "extensions/yellow_edit.png");
250 _editEmail->setPlaceHolder("Email:");
251 _editEmail->setInputMode(ui::EditBox::InputMode::EMAIL_ADDRESS);
252 _editEmail->setDelegate(this);
253 _editEmail->setVisible(true);
254 _editEmailParent->addChild(_editEmail);
255 //It is required to use setFontSize and setContentSize after adding it to the hierarchy, so that native EditBox get the right size
256 _editEmail->setFontSize(30);
257 _editEmail->setContentSize(bottomButtonSize);
258
259 auto buttonEmail = (ui::Button*)button->clone();
260 buttonEmail->setTitleText("Toggle Visibility");
261 buttonEmail->setPosition(_editEmailParent->getPosition() + Vec2(editBoxSize.width/2 + buttonSize.width/2, 0.0f));
262 buttonEmail->addClickEventListener([=](Ref* ref){
263 _editEmail->setVisible(!_editEmail->isVisible());
264 });
265 addChild(buttonEmail);
266
267 return true;
268 }
269 return false;
270}
cocos2d::Node * _editEmailParent
Definition: UIEditBoxTest.h:71
virtual bool init() override
Definition: UIScene.cpp:46

引用了 _editEmail, _editEmailParent, _editName, _editPassword, _TTFShowEditReturn , 以及 UIScene::init().

+ 函数调用图:

类成员变量说明

◆ _editEmail

cocos2d::ui::EditBox* UIEditBoxTestToggleVisibility::_editEmail
protected

在文件 UIEditBoxTest.h70 行定义.

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

◆ _editEmailParent

cocos2d::Node* UIEditBoxTestToggleVisibility::_editEmailParent
protected

在文件 UIEditBoxTest.h71 行定义.

被这些函数引用 init().

◆ _editName

cocos2d::ui::EditBox* UIEditBoxTestToggleVisibility::_editName
protected

在文件 UIEditBoxTest.h68 行定义.

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

◆ _editPassword

cocos2d::ui::EditBox* UIEditBoxTestToggleVisibility::_editPassword
protected

在文件 UIEditBoxTest.h69 行定义.

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

◆ _TTFShowEditReturn

cocos2d::Label* UIEditBoxTestToggleVisibility::_TTFShowEditReturn
protected

在文件 UIEditBoxTest.h67 行定义.

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


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