本文转载于: http://5.quanpao.com/?p=561

 

使用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);