Cocos2d-x学习笔记(二十七)之 获得用户虚拟键盘输入

  在游戏中,有时需要用户输入用户名、密码等,这时需要调用虚拟键盘来实现。在Cocos2D-x中,通过使用继承输入法代理类CCIMEDelegate和其字体标签类CCLabelTTF的子类输入框类CCTextFieldTTF来实现虚拟键盘输入功能。继承关系如下:

  CCTextFieldTTF->CCLabelTTF、CCIMEDelegate。

  可以看出CCTextFieldTTF类分别继承自CCIMEDelegate类和CCLabel类,这就决定了它既是标签化的输入框,又是可输入字符的标签。

  1、CCIMEDelegate类的主要成员函数如下:

  attachWithIME:打开键盘并允许输入。

  detachWithIME:关闭键盘并停止输入。

  2、CCTextFieldTTF类的主要成员函数如下:

  attachWithIME:打开键盘并允许输入。

  detachWithIME:关闭键盘并停止输入。

  initWithPlaceHolder:初始化字体等信息。

  getCharCount:获得个数。

  setString:设置要显示的文字。

  getString:获得显示的文字。

  getColorSpaceHolder:获得动画显示字体颜色。

  setColorSpaceHolder:设置动画显示字体颜色。

  setPlaceHolder:设置默认字符。

  getPlaceHolder:获得默认字符。

  CCTextFieldTTF类使用示例如下:

 1 //获得用户输入首先要在场景中加入一个继承自CCIMEDelegate的可现实的节点(CCTextFieldTTF类的实例),当这个输入框被触摸时,调用onClickTrackNode函数开启输入框。
 2 void TextFieldTTFTest::onClickTrackNode(bool bClicked)
 3 {
 4     if(bClicked)
 5     {
 6         //CCTextFieldTTF类的实例
 7          pTextField->attachWithIME();
 8      }
 9      else
10      {
11          pTextField->detachWithIME();
12       }
13 }
原文地址:https://www.cnblogs.com/atong/p/3285025.html