cocos2d-x如何弹出键盘的过程就是我们需要使用相应的代码辅助完成,现在我们就看一下过程吧!
#include "TextFieldTTF.h"
CCScene* TextFieldTTF::scene(){
CCScene* scene = CCScene::create();
TextFieldTTF* layer = TextFieldTTF::create();
scene->addChild(layer);
return scene;
}
bool TextFieldTTF::init()
{
//初始化父类层
CCLayer::init();
//得到窗口的尺寸
CCSize winSize = CCDirector::sharedDirector()->getWinSize();
//创建文本框
textEdit = CCTextFieldTTF::textFieldWithPlaceHolder("Please input your name:",
"Arial", 36);
//设置文本框的位置
textEdit->setPosition(ccp(winSize.width / 2, winSize.height / 2));
//添加文本框到层上
addChild(textEdit);
//输入密码
textEdit->setSecureTextEntry(true);
//注册触摸函数,实现当触摸到控件的时候,弹出软键盘
setTouchMode(kCCTouchesOneByOne);
setTouchEnabled(true);
return true;
}
bool TextFieldTTF::ccTouchBegan(CCTouch* touch, CCEvent* ev)
{
//用于判断是否点中了控件
bool isClicked = textEdit->boundingBox().containsPoint(touch->getLocation());
//如果点中了控件
if(isClicked)
{
//弹出软键盘
textEdit->attachWithIME();
}
//表示接受触摸消息
return true;
}
程序移值到Android下的执行结果:程序移值到Android下的执行结果:
触摸“Please input your name :”后弹出软键盘
通过软键盘输入一段字符
选择完成后字符以密码的形式显示在控件上