使用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 ...
随机推荐
- win7_32位安装MySQL_5.6以及密码修改方法
1.下载mysql: http://www.xiazaiba.com/html/361.html 2.安装 方便起见,全部默认下一步吧,原理一个样,最后安装到: 3.配置环境变量 我这里添加的是 C ...
- Entity Framework 数据部分更新之Attach &&Detach
我们经常会遇到这样的问题:Update一个entity的部分数据时,通常需要new一个新的对象,然后事这新的对象Attach到Context中,代码如下所示: /// <summary> ...
- Mirror–使用证书配置镜像模板
–==================================================================–该文档主要用于内部配置模板–场景:–主服务器:192.168.3 ...
- PADS无模命令总结
1.PADS2007无模命令与快捷键 <x.y>表示坐标.<s>表示文体.<n>表示数字. 1.[C]显示平面的焊盘和热焊盘(Thermal). 2.[D]显示当前 ...
- 『HTML5梦幻之旅』-缤纷多姿的烟花效果
天花无数月中开,五采祥云绕绛台.堕地忽惊星彩散,飞空旋作雨声来.怒撞玉斗翻晴雪,勇踏金轮起疾雷.更漏已深人渐散,闹竿挑得彩灯回. ——明·瞿佑·<烟火戏> 记得每年过春节的那段时间,除了欣 ...
- js 事件之 createEvent、dispatchEvent
//document上绑定自定义事件ondataavailable document.addEventListener('customevent', function(event) { alert(e ...
- display的table和cell外加table-layout:fixed等分布局,外加换行,word-wrap:break-word
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- sass的cd进入目录
今天在弄sass安装进入项目文件命令 直接f:
- 应用java多线程实现server端与多client之间的通信
应用多线程来实现server与多线程之间的通信的基本步骤 1.server端创建ServerSocket,循环调用accept()等待client链接 2.client创建一个Socket并请求和se ...
- Android sdk + PhoneGap 配置
最近在学习这方面. 安卓sdk(下载地址百度谷歌即可) . 最新版的安卓sdk 自带ADT(基于eclipse) 开发工具 所以 我们不需要另外下载 eclipse 即可开始开发. 安卓个版本ap ...