cocos2d-x 添加启动数字输入法的功能
1、EAGLView.h里面添加键盘类型属性
@property(nonatomic) UIKeyboardType keyboardType;
2、CCEGLView_ios.mm 里面添加对键盘设置的方法
//设置为只有数字输入法的键盘
void CCEGLView::setIMEKeyboardNumber()
{EAGLView * view = [EAGLViewsharedEGLView];view.keyboardType =UIKeyboardTypeNumberPad;
}
//设置为默认的输入法键盘
void CCEGLView::setIMEKeyboardDefault()
{EAGLView * view = [EAGLViewsharedEGLView];view.keyboardType =UIKeyboardTypePhonePad;
}
3、CCTextFieldTTF.h里面添加自定义的输入法键盘种类来做管理
enum eKeyBoardType{KEY_BOARD_TYPE_NORMAL = 0,KEY_BOARD_TYPE_NUMBER,
};inline void setKeyboardType (eKeyBoardType type) {m_keyboardType = type; }inline int getKeyboardType () {returnm_keyboardType; }
eKeyBoardType m_keyboardType;
4、 bool CCTextFieldTTF ::attachWithIME()改成这样:
bool CCTextFieldTTF::attachWithIME()
{bool bRet = CCIMEDelegate::attachWithIME();if (bRet){// open keyboardCCEGLView * pGlView = CCDirector::sharedDirector()->getOpenGLView();if (pGlView){if (getKeyboardType() ==KEY_BOARD_TYPE_NORMAL) {pGlView->setIMEKeyboardDefault();}elseif (getKeyboardType() ==KEY_BOARD_TYPE_NUMBER) {pGlView->setIMEKeyboardNumber();}pGlView->setIMEKeyboardState(true);}}return bRet;
}
5、初始化用来输入的CCTextFieldTTF的时候调用
setKeyboardType(KEY_BOARD_TYPE_NUMBER);//来设置输入法为数字即可
6. 在EAGLView中实现UITextInputTraits ,即
-(UIKeyboardType) keyboardType
{return keyboardType_;
}
-(void) setKeyboardType:(UIKeyboardType)keyboardType
{keyboardType_ = keyboardType;
}
//并在EAGLView.h添加属性
UIKeyboardType keyboardType_;
我得补充:如果在 EAGLView中没有添加@property(nonatomic) UIKeyboardType keyboardType;的话,程序会在
view.keyboardType = UIKeyboardTypeASCIICapable 的时候崩溃,报错:unrecognized selector sent to instance。
7.只有调用setKeyboardType 即可实现指定的键盘类型
cocos2d-x 添加启动数字输入法的功能相关推荐
- 【COCOS2DX-游戏开发之七】添加启动数字输入法的功能
cocos2d-x 里面默认输入法只有一种,就是启动的时候就是系统默认的输入法,然后可以切换数字,中英文等等, 但是我们程序里有个功能设置价格,不希望能够输入中英文,只要输入数字,输入以后再判断显然用 ...
- 为cocos2d-x 添加启动数字输入法的功能
有文章http://blog.csdn.net/smilelance/article/details/7244759给出了正确的方向,不过照之实现,却没有实现相应的效果,可能是作者说的不明显,也可以是 ...
- html5 input的type属性启动数字输入法
当文本框只能输入数字是一个很常见的需求,比如电话号码,身份证号,卡号, 数量....等等只允许数字输入,为了更好的用户体验性,直接写出 启动数字键盘的需求,我和大多数人一样用 this.style ...
- 手机html input打开数字,html5 input的type属性启动数字输入法
POJ 2653 Pick-up sticks (线段相交) 题意:给你n条线段依次放到二维平面上,问最后有哪些没与前面的线段相交,即它是顶上的线段 题解:数据弱,正向纯模拟可过 但是有一个陷阱:如果 ...
- 趣学python3(2)-添加以数字文字形式使用下划线的功能,以提高可读性
添加以数字文字形式使用下划线的功能,以提高可读性 x=2_111_222 y=0x_fff_6da print(x) print(y) 2111222 16774874
- html输入页码跳转,如何为WordPress添加输入页码跳转功能?
最近看到有些网站没有输入页码跳转的功能,使用起来不是很方便,我就想用户如果需要跳转到那一页只需在输入框中输入相应的页面点击确定就可以跳转到指定页面,那么如何为WordPress添加输入页码跳转功能?接 ...
- 用c语言实现一个简单的输入法联想功能
用c语言实现一个简单的输入法联想功能 手机输入法的联想功能十分常见,通过c语言同样可以实现一个简单的输入法联想功能. 首先读取一个文字量比较大的文件,通过线性表对汉字间的关系进行加权存储,再记录到总体 ...
- android 设置视频音量大小,为cocos2d-x添加调节视频音量的功能(Android)
为cocos2d-x添加调节视频音量的功能(Android). 日常吐槽cocos.我想放广告的时候播放一些其他声音,这时候我希望视频先静音,但是不停止播放.等声音播放完,我再放视频声音.赫然发现,V ...
- Android中EditText优先弹出数字输入法
Android Android中EditText优先弹出数字输入法 项目中一个EditText输入数字的频率较高,但是汉字和英文的输入也偶有需要,直接在xml文件将inputType设置为number ...
最新文章
- python流程控制语句-Python流程控制语句详解
- DS二叉树--左叶子数量
- jni java共享变量_JNI/NDK开发指南(七)——C/C++访问Java实例变量和静态变量 .
- 【数据结构与算法】之深入解析“二叉树的前序遍历”的求解思路与算法示例
- 2015年第六届蓝桥杯 - 省赛 - C/C++大学A组 - H. 饮料换购
- python 判断数据类型,是否与已知相同
- Java Socket笔记-udpSocket简单收发包
- c++程序设计中文件输入输出流知识点
- IXMLDOMDocument 成員
- vue 子页面调用父页面常用方式
- 【软件测试】软件测试需要遵守哪些原则
- UI自动化:单元测试框架
- Cplex教程(C++)
- 冒泡排序 BubbleSort
- 网络教学的即时通讯视频
- 详解LCD12864显示屏的使用(并行控制)
- 放弃幻想,全面拥抱Transformer:自然语言处理三大特征抽取器(CNN/RNN/TF)比较
- 网易邮箱写邮件HTML转换按钮,网易邮箱帮助中心 - 写信
- java use g1_深入理解 Java G1 垃圾收集器
- [已解决] 输入信号超出范围,调整为1600x900@60Hz