6、Cocos2d-X 游戏编程之------CCEditBox的实现
2014-10-07 19:57
387 查看
6、CCEditBox的实现
(1)
继承CCEditBoxDelegate协议;
//开始进入编辑
virtual voideditBoxEditingDidBegin(cocos2d::extension::CCEditBox* editBox);
//结束编辑
virtual voideditBoxEditingDidEnd(cocos2d::extension::CCEditBox* editBox);
//编辑框文本改变
virtual voideditBoxTextChanged(cocos2d::extension::CCEditBox* editBox, conststd::string& text);
//当触发return后的回调函数
virtual voideditBoxReturn(cocos2d::extension::CCEditBox* editBox);
(2)
boolHelloWorld::init()
{
if ( !CCLayer::init() )
{
return false;
}
CCSize size= CCDirector::sharedDirector()->getWinSize();
CCScale9Sprite * sacel9SprY =CCScale9Sprite::create("yellow_edit.png");
CCEditBox* box =CCEditBox::create(CCSizeMake(300, 60), sacel9SprY);
//设置编辑框内的文字
box->setText("");
//获取编辑框内的文字
CCLOG("Text:%s",box->getText());
//设置文本的颜色
box->setFontColor(ccc3(255, 0, 0));
//当编辑框中没有任何字符的提示
box->setPlaceHolder("请输入帐号");
CCLOG("PlaceHolder:%s",box->getPlaceHolder());;
//最大输入文本长度
box->setMaxLength(10);
CCLOG("Length:%i",box->getMaxLength());
/**
//
kEditBoxInputModeEmailAddr: 开启邮件地址
输入类型键盘
//
kEditBoxInputModeNumeric: 开启数字符号
输入类型键盘
//
kEditBoxInputModePhoneNumber: 开启
电话号码
输入类型键盘
//
kEditBoxInputModeUrl: 开启 URL
输入类型键盘
//
kEditBoxInputModeDecimal: 开启数字
输入类型键盘,允许小数点
//
kEditBoxInputModeSingleLine: 开启任何文本的输入键盘,不包括换行
//
*/
/
//设置输入模式
box->setInputMode(kEditBoxInputModeAny);
/**
//
kEditBoxInputFlagPassword: 密码形式输入
//
kEditBoxInputFlagSensitive: 敏感数据输入、存储输入方案且预测自动完成
//
kEditBoxInputFlagInitialCapsWord: 每个单词首字母大写,并且伴有提示
//
kEditBoxInputFlagInitialCapsSentence: 第一句首字母大写,并且伴有提示
// kEditBoxInputFlagInitialCapsAllCharacters:
所有字符自动大写
*/
//
//设置输入类型
box->setInputFlag(kEditBoxInputFlagSensitive);
/**
//
kKeyboardReturnTypeDefault: 默认使用键盘return
类型
//
kKeyboardReturnTypeDone: 默认使用键盘return类型为“Done”字样
//
kKeyboardReturnTypeSend: 默认使用键盘return类型为“Send”字样
//
kKeyboardReturnTypeSearch: 默认使用键盘return类型为“Search”字样
//
kKeyboardReturnTypeGo: 默认使用键盘return类型为“Go”字样
*/
//
//设置返回类型
// box->setReturnType(kKeyboardReturnTypeDone);
box->setPosition(ccp(size.width*0.5,220));
addChild(box);
CCScale9Sprite * sacel9SprG =CCScale9Sprite::create("green_edit.png");
CCEditBox* box2 =CCEditBox::create(CCSizeMake(300, 60), sacel9SprG);
box2->setInputFlag(kEditBoxInputFlagPassword);
box2->setReturnType(kKeyboardReturnTypeGo);
box2->setMaxLength(12);
box2->setPlaceHolder("请输入密码");
box2->setPosition(ccp(size.width*0.5,120));
addChild(box2);
//接口绑定
box2->setDelegate(this);
return true;
}
(3)协议的实现
//开始进入编辑
voidHelloWorld::editBoxEditingDidBegin(cocos2d::extension::CCEditBox* editBox)
{
CCLOG("Start Edit");
}
//结束编辑
voidHelloWorld::editBoxEditingDidEnd(cocos2d::extension::CCEditBox* editBox)
{
CCLOG("End Edit");
}
//编辑框文本改变
voidHelloWorld::editBoxTextChanged(cocos2d::extension::CCEditBox* editBox, conststd::string& text)
{
CCLOG("TextChanged");
}
//当触发return后的回调函数
voidHelloWorld::editBoxReturn(cocos2d::extension::CCEditBox* editBox)
{
CCLOG("editBoxReturn");
}
6、CCEditBox的实现
(1)
继承CCEditBoxDelegate协议;
//开始进入编辑
virtual voideditBoxEditingDidBegin(cocos2d::extension::CCEditBox* editBox);
//结束编辑
virtual voideditBoxEditingDidEnd(cocos2d::extension::CCEditBox* editBox);
//编辑框文本改变
virtual voideditBoxTextChanged(cocos2d::extension::CCEditBox* editBox, conststd::string& text);
//当触发return后的回调函数
virtual voideditBoxReturn(cocos2d::extension::CCEditBox* editBox);
(2)
boolHelloWorld::init()
{
if ( !CCLayer::init() )
{
return false;
}
CCSize size= CCDirector::sharedDirector()->getWinSize();
CCScale9Sprite * sacel9SprY =CCScale9Sprite::create("yellow_edit.png");
CCEditBox* box =CCEditBox::create(CCSizeMake(300, 60), sacel9SprY);
//设置编辑框内的文字
box->setText("");
//获取编辑框内的文字
CCLOG("Text:%s",box->getText());
//设置文本的颜色
box->setFontColor(ccc3(255, 0, 0));
//当编辑框中没有任何字符的提示
box->setPlaceHolder("请输入帐号");
CCLOG("PlaceHolder:%s",box->getPlaceHolder());;
//最大输入文本长度
box->setMaxLength(10);
CCLOG("Length:%i",box->getMaxLength());
/**
//
kEditBoxInputModeEmailAddr: 开启邮件地址
输入类型键盘
//
kEditBoxInputModeNumeric: 开启数字符号
输入类型键盘
//
kEditBoxInputModePhoneNumber: 开启
电话号码
输入类型键盘
//
kEditBoxInputModeUrl: 开启 URL
输入类型键盘
//
kEditBoxInputModeDecimal: 开启数字
输入类型键盘,允许小数点
//
kEditBoxInputModeSingleLine: 开启任何文本的输入键盘,不包括换行
//
*/
/
//设置输入模式
box->setInputMode(kEditBoxInputModeAny);
/**
//
kEditBoxInputFlagPassword: 密码形式输入
//
kEditBoxInputFlagSensitive: 敏感数据输入、存储输入方案且预测自动完成
//
kEditBoxInputFlagInitialCapsWord: 每个单词首字母大写,并且伴有提示
//
kEditBoxInputFlagInitialCapsSentence: 第一句首字母大写,并且伴有提示
// kEditBoxInputFlagInitialCapsAllCharacters:
所有字符自动大写
*/
//
//设置输入类型
box->setInputFlag(kEditBoxInputFlagSensitive);
/**
//
kKeyboardReturnTypeDefault: 默认使用键盘return
类型
//
kKeyboardReturnTypeDone: 默认使用键盘return类型为“Done”字样
//
kKeyboardReturnTypeSend: 默认使用键盘return类型为“Send”字样
//
kKeyboardReturnTypeSearch: 默认使用键盘return类型为“Search”字样
//
kKeyboardReturnTypeGo: 默认使用键盘return类型为“Go”字样
*/
//
//设置返回类型
// box->setReturnType(kKeyboardReturnTypeDone);
box->setPosition(ccp(size.width*0.5,220));
addChild(box);
CCScale9Sprite * sacel9SprG =CCScale9Sprite::create("green_edit.png");
CCEditBox* box2 =CCEditBox::create(CCSizeMake(300, 60), sacel9SprG);
box2->setInputFlag(kEditBoxInputFlagPassword);
box2->setReturnType(kKeyboardReturnTypeGo);
box2->setMaxLength(12);
box2->setPlaceHolder("请输入密码");
box2->setPosition(ccp(size.width*0.5,120));
addChild(box2);
//接口绑定
box2->setDelegate(this);
return true;
}
(3)协议的实现
//开始进入编辑
voidHelloWorld::editBoxEditingDidBegin(cocos2d::extension::CCEditBox* editBox)
{
CCLOG("Start Edit");
}
//结束编辑
voidHelloWorld::editBoxEditingDidEnd(cocos2d::extension::CCEditBox* editBox)
{
CCLOG("End Edit");
}
//编辑框文本改变
voidHelloWorld::editBoxTextChanged(cocos2d::extension::CCEditBox* editBox, conststd::string& text)
{
CCLOG("TextChanged");
}
//当触发return后的回调函数
voidHelloWorld::editBoxReturn(cocos2d::extension::CCEditBox* editBox)
{
CCLOG("editBoxReturn");
}
相关文章推荐
- 重新实现一遍cocos2d-x手机游戏编程一书中的魔塔源码
- 7、Cocos2d-X 游戏编程之------CCControlSwitch的实现
- 利用Java Swing 实现游戏开发-Java基础-Java-编程开发
- 【iOS-Cocos2d游戏开发之十五】详解CCProgressTimer 进度条并修改cocos2d源码实现“理想”游戏进度条!
- cocos2d-x 实现按Home和待机键后,再进入游戏显示暂停界面
- 【OpenGL】游戏编程常用TGA图像格式详解以及加载纹理编程实现
- 编程之美上24点游戏的实现
- cocos2d-x学习笔记(一)塔防类游戏道具系统开发(上)定时炸弹和轰炸的实现
- 详解CCProgressTimer 进度条并修改cocos2d源码实现“理想”游戏进度条!
- C编程之旅:猜数字游戏的简单实现
- cocos2d-x 实现按Home和待机键后,再进入游戏显示暂停界面
- 【iOS-Cocos2d游戏开发之十五】详解CCProgressTimer 进度条并修改cocos2d源码实现“理想”游戏进度条!
- 【iOS-Cocos2d游戏开发之十五】详解CCProgressTimer 进度条实现“理想”游戏进度条! 推荐
- 详解CCProgressTimer 进度条并修改cocos2d源码实现“理想”游戏进度条!
- 【iphone游戏开发】iphone-Cocos2d游戏开发之四:精灵实现缩放,旋转,跳动,移动等动画
- cocos2d-x AR实景游戏实现
- J2me网络编程以及网络游戏的实现
- 游戏编程笔记-起步(三)-贪吃蛇游戏实现
- 【iOS-Cocos2d游戏开发之二十二 】CCSpeed实现CCAnimate动画进行时设置慢动作以及设置游戏加减速进行(塔防游戏必备)!
- 【iOS-Cocos2d游戏开发之十五】详解CCProgressTimer 进度条并修改cocos2d源码实现“理想”游戏进度条!