- //设置背景图片
- //ps:CCScale9Sprite对象,是一种CCSprite对象的变形,它的用法和CCSprite一样,不同点是,CCScale9Sprite对象有个特性就是缩放贴图时可以尽量不失帧。
- CCScale9Sprite *pBg = CCScale9Sprite::create("extensions/orange_edit.png");
- //创建编辑框
- CCEditBox *pEditBox = CCEditBox::create(CCSizeMake(200, 40), pBg);
- pEditBox->setPosition(ccp(100, 100));
- addChild(pEditBox);
- /*
- 编辑框的一些函数
- setText("字符串"); //设置文本
- setFontColor(color); //设置文本颜色
- setPlaceHolder("文本"); //设置预设文本
- getPlaceHolder(对象); //获得预设文本
- setMaxLength(对象); //设置最大长度
- getMaxLength(对象); //获得最大长度
- setInputMode(); //设置键盘模式
- setInputFlag(); //设置文本类型
- setReturnType(); //设置键盘return类型
- 1.setInputMode
- 这里cocos2dx给我们提供了很多键盘的模式,我们来一一了解下。
- kEditBoxInputModeAny //文本键盘(含换行)
- kEditBoxInputModeEmailAddr //邮件类键盘
- kEditBoxInputModeNumeric //数字符号键盘
- kEditBoxInputModePhoneNumber //电话号码键盘
- kEditBoxInputModeUrl //URL键盘
- kEditBoxInputModeDecimal //输入键盘(含小数点)
- kEditBoxInputModeSingleLine //文本键盘(不含换行)
- 2.setInputFlag
- 这里cocos2dx给我们提供了5种文本类型。
- kEditBoxInputFlagPassword //密码形式
- kEditBoxInputFlagSensitive //敏感数据输入
- kEditBoxInputFlagInitialCapsWord //每个单词首字符大写,并有提示
- kEditBoxInputFlagInitialCapsSentence //第一句首字符大写,并有提示
- kEditBoxInputFlagInitialCapsAllCharacters //自动大写
- 3.setReturnType
- 这里cocos2dx给我们提供了5种键盘返回类型。
- kKeyboardReturnTypeDefault //默认类型
- kKeyboardReturnTypeDone //Done字样
- kKeyboardReturnTypeSend //Send字样
- kKeyboardReturnTypeSearch //Search字样
- kKeyboardReturnTypeGo //Go字样
- */
- //好了,光说不练可不行,我们来试一下做个登录界面吧。
- //1.和CCtextFieldTTF一样,我们需要一个监控事件来操作。让我们的类继承CCEditBoxDelegate接口。
- //开始编辑
- virtual void editBoxEditingDidBegin(cocos2d::extension::CCEditBox * myeditbox);
- //结束编辑
- virtual void editBoxEditingDidEnd(cocos2d::extension::CCEditBox * myeditbox);
- //编辑框文字改变
- virtual void editBoxTextChanged(cocos2d::extension::CCEditBox * myeditbox,const std::string&text);
- //触发return后的回调函数
- virtual void editBoxReturn(cocos2d::extension::CCEditBox * myeditbox);
- CCScale9Sprite * scale9one = CCScale9Sprite::create("boxbg.png");
- CCEditBox * myeditbox1=CCEditBox::create(CCSizeMake(200,40),scale9one);
- myeditbox1->setInputMode(kEditBoxInputModeSingleLine);
- myeditbox1->setPosition(ccp(mysize.width/2,mysize.height-100));
- this->addChild(myeditbox1);
- myeditbox1->setDelegate(this);
- CCEditBox * myeditbox2=CCEditBox::create(CCSizeMake(200,40),scale9one);
- myeditbox2->setInputMode(kEditBoxInputModeSingleLine);
- myeditbox2->setInputFlag(kEditBoxInputFlagPassword);
- myeditbox2->setPosition(ccp(mysize.width/2,mysize.height-200));
- this->addChild(myeditbox2);
- myeditbox2->setDelegate(this);
ccui.EditBox 的使用
猜你喜欢
转载自blog.csdn.net/xuefujin/article/details/80784689
今日推荐
周排行