使用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 ...
随机推荐
- select,poll,epoll之api笔记
参考:http://www.cnblogs.com/Anker/p/3265058.html select /* According to POSIX.1-2001 */ #include <s ...
- RobotFramework环境搭建
环境搭建 1. 准备条件 python-2.7.7 https://www.python.org/download/releases/2.7.7/ wxPython2.8-win32-unicode- ...
- Cortex-M3学习日志(二)-- 按键实验
有输出总会有输入,今天测试一下按键的功能,第一节已经说过了与GPIO端口相关的寄存器,这里不在重复,想要从端口读取数据,首先把FIODIR这个寄存器设置为输入,再从FIOPIN寄存器读取数据就可以了, ...
- logrotate 日志清理后 rsyslog中断问题
<pre name="code" class="html">随后配置logrotate的配置文件/etc/logrotate.conf,加入下面的内 ...
- word-wrap,white-space和text-overflow属性
(1) //在断点处换行 word-wrap: normal; //允许在长单词进行换行 word-wrap: break-word; (2) white-space:怎么处理元素间的空白 white ...
- NYOJ 7-街区最短路径问题(曼哈顿距离)
街区最短路径问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的间 ...
- hive集群安装配置
hive 是JAVA写的的一个数据仓库,依赖hadoop.没有安装hadoop的,请参考http://blog.csdn.net/lovemelovemycode/article/details/91 ...
- Hdu Binary Tree Traversals
Problem Description A binary tree is a finite set of vertices that is either empty or consis ...
- 侯老师的话(Application Framework)
摘自http://blog.csdn.net/zlc19876/article/details/5355022 本篇文章主要介绍了"侯老师的话(Application Framework)& ...
- if---(switch-case)语句初步学习总结
Daily sentence: Happiness is about having each tiny wish come true. 幸福就是达成每一个Tiny Wish. Ctrl+E D C# ...