cocos2d-x 输入框CCEditBox的使用
特别说明: 这个版本的CCEditBox,设计有缺陷,背景图片的位置与输入区域的位置不同步,需要自己修改原来的代码,自己加上输入区域的坐标偏移量。
void CCEditBox::setPosition(const CCPoint& pos)
{
CCControlButton::setPosition(pos);
if (m_pEditBoxImpl != NULL)
{
//add by mayi 为了让输入框坐标居中,特别如此处理 20130605
CCSize m_screenSize = CCDirector::sharedDirector()->getWinSize();
CCPoint newPos = ccp(pos.x + m_screenSize.width/2, pos.y + m_screenSize.height/2);
m_pEditBoxImpl->setPosition(newPos);
}
}
***==================================***
关于输入框,有CCTextFieldTTF、CCEditBox能用
最后还是决定用CCEditBox,便捷舒适,后续会做成内部函数来使用,免除每次都需要写很多代码
CCScale9Sprite * bgsprite =CCScale9Sprite::create("bgsprite.png");
CCEditBox * box = CCEditBox::create(CCSizeMake(200, 50),bgsprite);
box->setPlaceHolder("请输入您的昵称");//当编辑框中没有任何字符的提示
box->setMaxLength(15);//设置最大输入文本长度
box->setReturnType(kKeyboardReturnTypeDone);//设置return类型
void HelloWorld:: editBoxEditingDidBegin(cocos2d::extension::CCEditBox*editBox){}
//结束编辑
void HelloWorld:: editBoxEditingDidEnd(cocos2d::extension::CCEditBox* editBox){}
//编辑框文本改变
void HelloWorld:: editBoxTextChanged(cocos2d::extension::CCEditBox* editBox, const std::string& text){}
//当触发return后的回调函数
void HelloWorld:: editBoxReturn(cocos2d::extension::CCEditBox* editBox){}
box->setText("My name is six ant");//设置编辑框内的文字
CCLOG("Text:%s",box->getText());//获取编辑框内的文字
box->setFontColor(ccc3(255, 0, 0));//设置文本颜色
box->setInputFlag(kEditBoxInputFlagSensitive);//设置输入模式,密码为:kEditBoxInputFlagPassword
box->setPosition(ccp(240, 220));
this->addChild(box);
如果要处理输入框的各种状态,则需要重写容器的对应函数
//开始进入编辑
void HelloWorld:: editBoxEditingDidBegin(cocos2d::extension::CCEditBox*editBox){}
//结束编辑
void HelloWorld:: editBoxEditingDidEnd(cocos2d::extension::CCEditBox* editBox){}
//编辑框文本改变
void HelloWorld:: editBoxTextChanged(cocos2d::extension::CCEditBox* editBox, const std::string& text){}
//当触发return后的回调函数
void HelloWorld:: editBoxReturn(cocos2d::extension::CCEditBox* editBox){}
cocos2d-x 输入框CCEditBox的使用的更多相关文章
- [置顶] 【玩转cocos2d-x之三十】点九图和输入框的使用
原创作品,转载请标明:http://blog.csdn.net/jackystudio/article/details/17297721 登录界面一个帐号/密码输入框或者主角命名框是少不了的.这节就来 ...
- cocos2dx注册场景 使用CCEditBox实现输入框
我们在开始玩一个游戏时,通常要做的第一件事就是注册账号,下面就让我们来制作一个简单的注册场景,我所使用的cocos2dx版本为2.2.2 在这个场景中最主要的元素就是输入框和按钮,我从网上找了一些素材 ...
- 部分android手机CCEditBox输入之后键盘输入框不消失得问题
用小米2s做登录界面时,用到CCEditBOx,输入完之后,键盘可以移下去,但是屏幕上还是显示得键盘自己得输入框,这时点击屏幕任何位置都无法把输入框干掉. 为什么ios上就没有这些android得琐碎 ...
- [Quick-x]移动CCEditbox的父对象导致输入框位置偏移问题
CCEditbox对象添加到某个layer,当layer移动时候,editbox输入状态下输入光标保持在原位,看起来就是光标发生了偏移 如果开始时添加的editbox不在屏幕内的话,光标会出现在屏幕边 ...
- 学生信息管理系统(cocos2d引擎)——数据结构课程设计
老师手把手教了两天半,看了一下模式,加了几个功能就大功告成了!!! 给我的感想就是全都是指针! 添加图片精灵: CCSprite* spBG = CCSprite::create("&qu ...
- cocos2d-x CCEditBox 字符不能显示完全的bug
cocos2d-x CCEditBox 字符不能显示完全的bug (cocos2dx版本 2.2.0)用CCEditBox制作帐号输入框,当输入的内容超过框的宽度时,框里面不会显示当前输入的字符,显示 ...
- Cocos2d-x CCEditBox & CCTextFieldTTF
下面简单记录一下如何Cocos2d-x中创建输入编辑框.在引擎中为我们提供了这样两个类:CCEditBox 和 CCTextFieldTTF. 一.CCEditBox ①这个类文件的位置 ②这个类 ...
- 关于cocos2d-x 中 CCEditBox 的输入位置和IOS虚拟键盘位置不重合的bug
这个文章的名字起的实在是有点长,主要是怕说不清楚. 在IOS上,输入时,我看到过的比较少,就两种,如附件两张图.一个是虚拟键盘的输入框完全是在CCEditBox上,另一张虚拟键盘的输入区域是紧挨着键盘 ...
- (转) CCTextFieldTTF输入框
CCTextFieldTTF输入框 分类: cocos2d-x 2013-04-08 16:32 2964人阅读 评论(1) 收藏 举报 新建工程,testInput 修改HelloWorldScen ...
随机推荐
- iOS 使用腾讯地图显示用户位置注意事项
1. 向 target中info 加入 NSLocationWhenInUseUsageDescription,string 类型.值是描写叙述为什么须要用户位置,这句话会出如今 提示用户是否同意a ...
- rails引入bootstrap
1.在Gemfile中增加 gem 'bootstrap-sass', '~> 3.2.0.2'2.bundle install3.把assets/stylesheets/application ...
- Java中equals()、equalsIgnoreCase()和==的区别
用久了C#,在Java中,判断一个字符串还是习惯性的用了==,但是总是不能按照正确的判断分支运行,后来才想起来Java中是有equals的,然后就有引出了equalsIgnoreCase. 这三种 ...
- 排序(2)---------简单插入排序(C语言实现)
插入排序(Insertion Sort)的算法描写叙述是一种简单直观的排序算法. 它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到对应位置并插入.插入排序在实现上,通常 ...
- 06-编写Hibernate API编写访问数据库的代码,使用Junit进行测试
用到的注解: @Test:测试方法 @Before:初始化方法. @After:是否资源. 先执行Befere,然后执行Test,最后执行After. 第一步:新建一个Junit目录. 第二步:取名 ...
- spring bean parent属性详解
必要条件:1.子bean必须与父bean保持兼容,也就是说子bean中必须有父bean定义的所有属性. 2.父bean必须是抽象bean或者定义lazy-init=true也就是不让bean工厂实例化 ...
- ZendServer中关于php.ini不同环境的建议
ZendServer根据开发环境和产品环境的不同情况,对php.ini中的一些选项做了建议设置,列表如下: ;;;;;;;;;;;;;;;;;;; ; Quick Reference ; ;;;;;; ...
- iOS 扫雷游戏
代码地址如下:http://www.demodashi.com/demo/11254.html 1.项目结构图 Viewcontroller:扫雷逻辑代码 LevelModel:扫雷难度选择代码 2. ...
- Oracle中sign/decode/nvl/round/trunc/(+)/instr/substr/replace解释
1. sign函数 sign函数语法: sign(n); sign函数说明: 取数字n的符号,大于0返回1,小于0返回-1,等于0返回0(n可以是表达式,(n-200)) 例子: a=10; b=50 ...
- 在SQL Server中调用.NET程序集
需求是这样的,我在.net程序里操作数据时将一些字段数据加密了,这些数据是很多系统共用的,其中一delphi程序也需要用到,并且需要将数据解密,由于我在.net里加密的方式比较特殊,在delphi程序 ...