cocos2d-x 调用虚拟键盘设置默认输入法
来源:互联网 发布:电脑电视台直播软件 编辑:程序博客网 时间:2024/05/17 20:55
cocos2d-x里面默认输入法就是调用系统默认的输入法,然后可以切换数字、中英文等,但是有些需求想让输入法默认数字,比如输入密码或电话等,这样体验会好很多的。
别的不多说了,直接上步骤。
1、EAGLView.h里面添加键盘类型属性
@property(nonatomic) UIKeyboardType keyboardType;
2、CCEGLView.h里面添加对键盘设置的方法
//设置为只有数字输入法的键盘
void setIMEKeyboardNumber() ;
//设置为默认的输入法键盘
void setIMEKeyboardDefault();
3、CCEGLView.mm里面添加对键盘设置的方法
//设置为只有数字输入法的键盘
void CCEGLView::setIMEKeyboardNumber()
{
EAGLView * view = [EAGLView sharedEGLView];
view.keyboardType =UIKeyboardTypeNumberPad;
}
//设置为默认的输入法键盘
void CCEGLView::setIMEKeyboardDefault()
{
EAGLView * view = [EAGLView sharedEGLView];
view.keyboardType =UIKeyboardTypePhonePad;
}
4、CCTextFieldTTF.h里面添加自定义的输入法键盘种类来做管理
enum eKeyBoardType
{
KEY_BOARD_TYPE_NORMAL = 0,
KEY_BOARD_TYPE_NUMBER,
};
inline void setKeyboardType (eKeyBoardType type) {m_keyboardType = type;}
inline int getKeyboardType () {return m_keyboardType;}
eKeyBoardType m_keyboardType;
5、bool CCTextFieldTTF::attachWithIME()改成这样:
bool CCTextFieldTTF::attachWithIME()
{
bool bRet = CCIMEDelegate::attachWithIME();
if (bRet)
{
// open keyboard
CCEGLView * pGlView = CCDirector::sharedDirector()->getOpenGLView();
if (pGlView)
{
if (getKeyboardType() ==KEY_BOARD_TYPE_NORMAL)
{
pGlView->setIMEKeyboardDefault();
}
else if (getKeyboardType() ==KEY_BOARD_TYPE_NUMBER)
{
pGlView->setIMEKeyboardNumber();
}
pGlView->setIMEKeyboardState(true);
}
}
return bRet;
}
6、初始化用来输入的CCTextFieldTTF的时候调用
setKeyboardType(KEY_BOARD_TYPE_NUMBER);来设置输入法为数字即可
- cocos2d-x 调用虚拟键盘设置默认输入法
- cocos2d调用虚拟键盘
- 【cocos2d-x笔记】文本输入,调用虚拟键盘
- cocos2d-x添加虚拟键盘获得用户输入CCTextField实例
- cocos2d-x 修改虚拟键盘上“return”按钮
- cocos2d-x添加虚拟键盘获得用户输入CCTextField实例
- MTK 虚拟键盘与输入法
- MTK 虚拟键盘与输入法
- 设置默认输入法
- android 设置默认输入法
- android默认输入法设置
- android 设置默认输入法
- 设置默认韩语输入法
- 设置默认输入法
- android设置默认输入法
- android默认输入法设置
- 设置默认输入法
- Android设置默认输入法
- 关于vpn-on-demand-for-ios-devices的几篇文章
- Ipad照片丢失如何处理
- MyEclipse自定义Java文件语法颜色。 java Syntax Coloring
- NYOJ 29 求转置矩阵问题
- Qt操作数据库
- cocos2d-x 调用虚拟键盘设置默认输入法
- OpenCV 轮廓质心
- Object-C 学习笔记(二十八)--- 归档(1)
- 设计模式——概述
- 喜客门与58同城的相同点与不同点分析
- Starling中的拖拽
- 机器指令 汇编 优化 编译概念的理解!
- HTTP Header('Content-Type:application/xxx')
- <a href="#">禁止跳到页面顶端的解决办法