使用COCOS2D-X JSB开发,在js页面中设置iOS键盘模式
XYSDK.h
void setKeyboardType(int type);
XYSDK.cpp
voidXYSDK::setKeyboardType(int type)
{
#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
CCEGLView * pGlView =
CCDirector::sharedDirector()->getOpenGLView();
if (pGlView)
{
==type) {
pGlView->setIMEKeyboardDefault();
==type) {
pGlView->setIMEKeyboardNumber();
}
pGlView->setIMEKeyboardState(true);
}
#endif
}
CCEGLView
voidCCEGLView::setIMEKeyboardNumber()
{
EAGLView * view = [EAGLViewsharedEGLView];
view.keyboardType =
UIKeyboardTypeNumbersAndPunctuation;
}
voidCCEGLView::setIMEKeyboardDefault()
{
EAGLView * view = [EAGLViewsharedEGLView];
view.keyboardType =UIKeyboardTypeDefault;
}
Jsb_xy.hpp
JSBool js_xy_XYSDK_setKeyboardType(JSContext *cx,
uint32_t argc,
jsval *vp);
Jsb_xy.cpp
JSBooljs_xy_XYSDK_setKeyboardType(JSContext *cx,
uint32_t argc,
jsval *vp)
{
jsval *argv =
JS_ARGV(cx, vp);
JSBool ok =
JS_TRUE;
JSObject *obj =
JS_THIS_OBJECT(cx, vp);
js_proxy_t *proxy =
jsb_get_js_proxy(obj);
XYSDK* cobj = (XYSDK *)(proxy ?proxy->ptr
: NULL);
JSB_PRECONDITION2( cobj, cx,
JS_FALSE,
"InvalidNative Object");
if (argc ==
) {
int arg0;
ok &=
jsval_to_int32], (int32_t *)&arg0);
JSB_PRECONDITION2(ok, cx,
JS_FALSE,
"Error processing arguments");
cobj->setKeyboardType(arg0);
JS_SET_RVAL(cx, vp,
JSVAL_VOID);
returnJS_TRUE;
}
JS_ReportError(cx,
"wrong number of arguments: %d, was expecting%d", argc,
);
returnJS_FALSE;
}
使用
在js文件里,attachWithIME之前设置setKeyboardType
) //默认键盘
)
//数字键盘
);
this._MainUI.getWidgetByName("TextField_shu_ru").attachWithIME();
使用COCOS2D-X JSB开发,在js页面中设置iOS键盘模式的更多相关文章
- 为了安全请不要随意在页面中设置validateRequest="false"
为了安全请不要随意在页面中设置validateRequest="false" 分类: ASP.NET2009-04-12 17:24 531人阅读 评论(0) 收藏 举报 asp. ...
- 在jsp页面中设置了远程验证,在初始化时必须预先调用一次。
参考链接:http://code.taobao.org/p/sztaotao/diff/5/trunk/code/src/main/webapp/webpage/modules/sys/roleFor ...
- 在jsp页面中设置中序号
首先要使用<c>标签的话需要先引入下面这句话: <%@ taglib prefix="c" uri="http://Java.sun.com/jsp/j ...
- vscode下面开发vue.js项目
vscode下面开发vue.js项目 https://blog.csdn.net/linzhiqiang0316/article/details/79176651 vscode下面开发vue.js ...
- App开发Native.js入门指南
概述 Native.js技术,简称NJS,是一种将手机操作系统的原生对象转义,映射为JS对象,在JS里编写原生代码的技术.如果说Node.js把js扩展到服务器世界,那么Native.js则把js扩展 ...
- 如何Vue-cli开始使用在Vue.js项目中启动TDD(测试驱动开发)
通常,使用测试驱动开发(TDD)最困难的部分是开始.你必须下载带有奇怪依赖项的软件包,让测试套件与你的构建系统协同工作,然后你必须弄清楚如何编写一个测试!难怪这么多的开发者在你提起它的时候就开始跑开了 ...
- 微信小程序app.js中设置公有变量
初始化GlobalData 在App.js的最上方可以设置GlobalData的初始值. App({ globalData:{ appid: '1wqas2342dasaqwe232342xxxxxx ...
- 关于在JSP页面中为什么一定要用${pageContext.request.contextPath}来获取项目路径,而不能用${request.contextPath}?
这里的疑问在于pageContext和request都是JSP中的内置对象之一,为什么不直接用${request.contextPath}来获取项目路径? 出现这种疑问,其实是将JSP的内置对象和EL ...
- 使用 video.js 开发 HTML5 视频页面
时间 2015-05-13 17:11:58 The GIS Guy 原文 http://thegisguy.tk/html5-video-using-video-js/ 主题 Video.js H ...
随机推荐
- Android Studio常用小技巧
1. Debug 模式查看变量的值: To quickly evaluate the value of any expression while debugging the program, hold ...
- fcntl记录锁
#include<fcntl.h> int fcntl(fd,F_GETLK/F_SETLK/F_SETLKW,struct flock *flockptr); F_GETLK:测试flo ...
- zookeeper 学习笔记 (C语言版本)
1.zookeeper简介 zookeeper是Hadoop的子项目,在大型分布式系统中,zookeeper封装好了一些复杂易出错的服务,提供简单易用的接口,给使用者提供高效稳定的服务.这些服务包括配 ...
- 织梦DEDECMS 首页列表页内容也时间日期调用标签
DEDECMS利用strftime()函数格式化时间的所有参数详解,包括年份日期进制.小时格式等,大家收藏吧,呵. 日期时间格式 (利用strftime()函数格式化时间)0 dedecms首页时间标 ...
- 解析配置文件ConfigParser模块
一.ConfigParser简介 ConfigParser 是用来读取配置文件的包.配置文件的格式如下:中括号“[ ]”内包含的为section.section 下面为类似于key-value 的配置 ...
- cocos2d-x创建场景
今天开始学习Cocos2d-x,使用的版本是2.1.4,这个版本比较老,对应的参考资料也比较齐全. 在mac/xcode环境下,代码是写在Classes文件夹下的,和iOS应用类似,程序从AppDel ...
- Baskets of Gold Coins
Baskets of Gold Coins Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- 如何在MFC对话框之间自定义消息传递
在MFC项目开发中,涉及到不同模块间数据信息的传递,如用户在登录界面成功登录后向系统管理模块发送用户名和密码等信息. 首先,需明确以下两点: 谁要发送这个消息--消息发送方 谁要接受这个消息--消息接 ...
- SQL Server索引进阶:第十三级,插入,更新,删除
在第十级到十二级中,我们看了索引的内部结构,以及改变结构造成的影响.在本文中,继续查看Insert,update,delete和merge造成的影响.首先,我们单独看一下这四个命令. 插入INSERT ...
- oracle 11g常用命令
1.监听启动监听lsnrctl start停止监听 lsnrctl stop 查看监听状态 lsnrctl status 2.启动用oracle用户进入su - oracle运行sqlplus命令,进 ...