|
- 使用CCEditBox需要启用扩展库既extension ,因此需要引入这个空间名
- 有两种方法, using namespace extension 或 宏定义 USING_NS_CC_EXT
- 在2.2.2版本中,不需要自己再额外引入包及连接器。
- 但是都需要引入头文件
- #include “cocos-ext.h”
- CCEditBox 只能单行输入,可以输入明文及密码。自带了4个虚函数及一系列输入时的常用操作函数,并且跨平台实现了各设备下的输入显示效果。
- 在H文件声明以下函数:
- void editBoxEditingDidBegin( CCEditBox *editBox ); //开始时的函数
- void editBoxEditingDidEnd( CCEditBox *editBox ); //结束时的函数
- void editBoxReturn( CCEditBox *editBox ); //输入完后点击回车时的处理
- void editBoxTextChanged( CCEditBox *editBox, const std::string &text ); //文字更改函数
- 在CPP文件实现这4个方法,可以是空方法。
- 在需要使用EDITBOX的地方实现以下代码,将其添加到层或某个容器。
- CCScale9Sprite* sacel9SprY = CCScale9Sprite::create(“CloseNormal.png”); //创建9宫格自动缩放按钮
- CCEditBox* box = CCEditBox::create(CCSizeMake(300, 100), sacel9SprY); //创建输入框,需要参数:巨型,9宫格背景
- //设置编辑框内的文字
- // box->setText(“xcc”);
- //设置位置
- box->setPosition(ccp(200,200));
- //获取编辑框内的文字
- //CCLOG(“Text:%s”,box->getText());
- //box->setDelegate(this);
- //设置文本的颜色
- box->setFontColor(ccc3(255, 0, 0));
- //当编辑框中没有任何字符的提示
- box->setPlaceHolder(“please insert ur username:”);
- //最大输入文本长度
- box->setMaxLength(15);
- box->setInputMode(kEditBoxInputModeAny); //设置输入键盘模式
- // kEditBoxInputModeAny: 开启任何文本的输入键盘,包括换行
- // kEditBoxInputModeEmailAddr: 开启 邮件地址 输入类型键盘
- // kEditBoxInputModeNumeric: 开启 数字符号 输入类型键盘
- // kEditBoxInputModePhoneNumber: 开启 电话号码 输入类型键盘
- // kEditBoxInputModeUrl: 开启 URL 输入类型键盘
- // kEditBoxInputModeDecimal: 开启 数字 输入类型键盘,允许小数点
- // kEditBoxInputModeSingleLine: 开启任何文本的输入键盘,不包括换行
- box->setReturnType(kKeyboardReturnTypeDone);
- // kKeyboardReturnTypeDefault: 默认使用键盘return 类型
- // kKeyboardReturnTypeDone: 默认使用键盘return类型为“Done”字样
- // kKeyboardReturnTypeSend: 默认使用键盘return类型为“Send”字样
- // kKeyboardReturnTypeSearch: 默认使用键盘return类型为“Search”字样
- // kKeyboardReturnTypeGo: 默认使用键盘return类型为“Go”字样
- //设置该属性输入密码时为替代符
- //box->setInputFlag(kEditBoxInputFlagPassword);
- this->addChild(box,5);
复制代码
|
|