cocostudio——js 3 final控件事件
近期试用了下cocos ide,然后引擎用的cocos2dx js 3 final,须要build runtime一下,以下是cocos studio相关的一些事件:
加入事件侦听:
// button
var root = ccs.uiReader.widgetFromJsonFile("res/UIButton_Editor/UIButton_Editor_1.json");
this.addChild(root); var back_label = ccui.helper.seekWidgetByName(root, "back");
back_label.addTouchEventListener(this.backEvent,this); var button = ccui.helper.seekWidgetByName(root, "Button_123");
button.addTouchEventListener(this.touchEvent,this); var title_button = ccui.helper.seekWidgetByName(root, "Button_126");
title_button.addTouchEventListener(this.touchEvent,this); var scale9_button = ccui.helper.seekWidgetByName(root, "Button_129");
scale9_button.addTouchEventListener(this.touchEvent,this); // check box
var root = ccs.uiReader.widgetFromJsonFile("res/UICheckBox_Editor/ui_checkbox_editor_1.json");
this.addChild(root); var checkbox = ccui.helper.seekWidgetByName(root, "CheckBox_540");
cc.log(checkbox.addEventListener);
checkbox.addEventListener(this.selectedStateEvent,this); // list view
var LISTVIEW_RES = [
"res/UIListView_Editor/UIListView_Vertical_Editor/ui_listview_editor_1.json",
"res/UIListView_Editor/UIListView_Horizontal_Editor/ui_listview_horizontal_editor_1.json"
];
var root = ccs.uiReader.widgetFromJsonFile(LISTVIEW_RES[0]);
this.addChild(root); var listView = ccui.helper.seekWidgetByName(root, "ListView_1214");
listView.addEventListener(this.selectedItemEvent,this); // page view
var root = ccs.uiReader.widgetFromJsonFile("res/UIPageView_Editor/ui_pageview_editor_1.json");
this.addChild(root); var pageView =ccui.helper.seekWidgetByName(root, "PageView_1269");
pageView.addEventListener(this.pageViewEvent, this); // RichText
var richText = ccui.RichText.create();
richText.ignoreContentAdaptWithSize(false);
richText.setContentSize(cc.size(120, 100)); var re1 = ccui.RichElementText.create(1, cc.color.WHITE, 255, "This color is white. ", "Helvetica", 10);
var re2 = ccui.RichElementText.create(2, cc.color.YELLOW, 255, "And this is yellow. ", "Helvetica", 10);
var re3 = ccui.RichElementText.create(3, cc.color.BLUE, 255, "This one is blue. ", "Helvetica", 10);
var re4 = ccui.RichElementText.create(4, cc.color.GREEN, 255, "And green. ", "Helvetica", 10);
var re5 = ccui.RichElementText.create(5, cc.color.RED, 255, "Last one is red ", "Helvetica", 10); var re6 = ccui.RichElementText.create(7, cc.color.ORANGE, 255, "Have fun!! ", "Helvetica", 10);
richText.pushBackElement(re1);
richText.insertElement(re2, 1);
richText.pushBackElement(re3);
richText.pushBackElement(re4);
richText.pushBackElement(re5);
richText.pushBackElement(re6); richText.setPosition(cc.p(1280 / 2, 720 / 2));
this.addChild(richText); // slider
var root = ccs.uiReader.widgetFromJsonFile("res/UISlider_Editor/ui_slider_editor_1.json");
this.addChild(root); var slider = ccui.helper.seekWidgetByName(root, "Slider_738");
slider.addEventListener(this.sliderEvent,this); var scale9_slider = ccui.helper.seekWidgetByName(root, "Slider_740");
scale9_slider.addEventListener(this.sliderEvent,this); // text field
var root = ccs.uiReader.widgetFromJsonFile("res/UITextField_Editor/ui_textfield_editor_1.json");
this.addChild(root); var textField_normal = ccui.helper.seekWidgetByName(root, "TextField_1109");
textField_normal.addEventListener(this.textFieldEvent,this); var textField_max_character = ccui.helper.seekWidgetByName(root, "TextField_1110");
textField_max_character.addEventListener(this.textFieldEvent,this); var textField_password = ccui.helper.seekWidgetByName(root, "TextField_1107");
textField_password.addEventListener(this.textFieldEvent,this);
各个事件回调:
// widget
touchEvent: function (sender, type) {
switch (type) {
case ccui.Widget.TOUCH_BEGAN:
cc.log("Touch Down");
break; case ccui.Widget.TOUCH_MOVED:
cc.log("Touch Move");
break; case ccui.Widget.TOUCH_ENDED:
cc.log("Touch Up");
break; case ccui.Widget.TOUCH_CANCELED:
cc.log("Touch Cancelled");
break; default:
break;
}
}, // check box
selectedStateEvent: function (sender, type) {
switch (type) {
case ccui.CheckBox.EVENT_SELECTED:
cc.log("Selected");
break;
case ccui.CheckBox.EVENT_UNSELECTED:
cc.log("Unselected");
break; default:
break;
}
}, // list view
selectedItemEvent: function (sender, type) {
switch (type) {
case ccui.ListView.EVENT_SELECTED_ITEM:
var listViewEx = sender;
cc.log("select child index = " + listViewEx.getCurSelectedIndex());
break; default:
break;
}
}, // page view
pageViewEvent: function (sender, type) {
switch (type) {
case ccui.PageView.EVENT_TURNING:
var pageView = sender;
cc.log("page = " + (pageView.getCurPageIndex() + 1));
break;
default:
break;
}
}, // slider
sliderEvent: function (sender, type) {
switch (type) {
case ccui.Slider.EVENT_PERCENT_CHANGED:
var slider = sender;
var percent = slider.getPercent();
cc.log("Percent " + percent.toFixed(0));
break;
default:
break;
}
}, // text field
textFieldEvent: function (sender, type) {
switch (type) {
case ccui.TextField. EVENT_ATTACH_WITH_IME:
cc.log("attach with IME");
break;
case ccui.TextField. EVENT_DETACH_WITH_IME:
cc.log("detach with IME");
break;
case ccui.TextField. EVENT_INSERT_TEXT:
cc.log("insert words");
break;
case ccui.TextField. EVENT_DELETE_BACKWARD:
cc.log("delete word");
break;
default:
break;
}
}
cocostudio——js 3 final控件事件的更多相关文章
- (转)客户端触发Asp.net中服务端控件事件
第一章. Asp.net中服务端控件事件是如何触发的 Asp.net 中在客户端触发服务端事件分为两种情况: 一. WebControls中的Button 和HtmlControls中的Type为su ...
- JS数量输入控件
JS数量输入控件 很早看到kissy首页 有数量输入控件,就随便看了下功能 感觉也不怎么难 所以也就试着自己也做了一个, 当然基本的功能和他们的一样,只是用了自己的编码思想来解决这么一个问题.特此给大 ...
- RxJava RxBinding RxView 控件事件 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- 基于MFC的网页ActiveX控件开发全程实录2(js向ActiveX控件传递参数)
原文转自 https://blog.csdn.net/qianbin3200896/article/details/81452822 1.ActiveX控件部分(JS到ActiveX控件)继续上一篇博 ...
- MFC 设置控件事件对应的函数
在项目中,右击你想设置的控件,打开属性. 然后找到:控件事件,如果在Visual Studio 2015中操作,显示如图: 然后,以设定单击事件为例: 点击右边的三角,选择 <Edit Code ...
- 用js给html控件赋值
用js给html控件赋值 <script> window.onload=function setValue()//在页面加载时赋值 { document.getElementById( ...
- 2.23 js处理日历控件(修改readonly属性)
2.23 js处理日历控件(修改readonly属性) 前言 日历控件是web网站上经常会遇到的一个场景,有些输入框是可以直接输入日期的,有些不能,以我们经常抢票的12306网站为例,详细讲解如 ...
- Python pyQt4/pyQt5 学习笔记1(空白窗口,按钮,控件事件,控件提示,窗体显示到屏幕中间,messagebox)
PyQt4是用来编写有图形界面程序(GUI applications)的一个工具包.PyQt4作为一个Python模块来使用,它有440个类和超过6000种函数和方法.同时它也是一个可以在几乎所有主流 ...
- ADF控件ID变化引发JS无法定位控件的解决方法
原文地址:ADF控件ID变化引发JS无法定位控件的解决方法作者:Nicholas JSFF定义的控件ID到了客户端时往往会改变.例如在JSFF中的一个的ID为"ot1",但是当这个 ...
随机推荐
- WSGI详解
WSGI接口 了解了HTTP协议和HTML文档,我们其实就明白了一个Web应用的本质就是: 浏览器发送一个HTTP请求: 服务器收到请求,生成一个HTML文档: 服务器把HTML文档作为HTTP响应的 ...
- Qt exe图标
1.首先准备一张ico照片,也可以通过http://www.ico.la/生成: 2.把ico照片拷贝到项目工程下,比如:“pic.ico” 3.在工程下,创建一个文件“myapp.rc”,用txt打 ...
- 教会你如何编写makefile文件
最近一直在学习makefile是如何编写的.当我们写的程序文件比较少的时候,敲入gcc /g++,当你在大型工程中,在一个个编译文件的话,你可能就会很郁闷.linux有一个自带的make命令,它让你的 ...
- DButils工具类能够用来获取数据库连接向数据库插入更新删除对象2
package com.ctl.util; import java.awt.Color; import java.awt.Font; import java.awt.Insets; import ja ...
- 百度地图SDK for Android v2.1.2全新发布
2013年6月20日 Android SDK:V2.1.2产品上线 新增: 自定义指南针位置(类:MapController,方法:setCompassMargin) 自定义当前位置图标(类:MyLo ...
- 修改进程占用内存SetProcessWorkingSetSize函数(多篇相关文章值得学习)
物理内存和虚拟内存 物理内存,在应用中,自然是顾名思义,物理上,真实的插在板子上的内存是多大就是多大了.看机器配置的时候,看的就是这个物理内存. 如果执行的程序很大或很多,就会导致物理内存消耗殆尽.为 ...
- shell字符串长度
方法一 $ expr length "Find out the length of this string from Linux Bash shell." 57 方法二 str1= ...
- [Unity3D]Unity3D发展偷看游戏初期阶段NGUI
朋友,大家晚上好. 我是秦培.欢迎关注我的博客,我的博客地址blog.csdn.net/qinyuanpei.近期博主開始研究NGUI了,由于NGUI是Unity3D中最为流行的界面插件,所以不管从学 ...
- 与众不同 windows phone (14) - Media(媒体)之音频播放器, 视频播放器, 与 Windows Phone 的音乐和视频中心集成
原文:与众不同 windows phone (14) - Media(媒体)之音频播放器, 视频播放器, 与 Windows Phone 的音乐和视频中心集成 [索引页][源码下载] 与众不同 win ...
- fake it till you become it
fake it till you become it_你泛起山川烟波里的不是我._百度空间 fake it till you become it