1,用self._topUIWidget = ccs.GUIReader:getInstance():widgetFromJsonFile("mapTopUI.json")就还是用的以前c++的那套,时间机制和现有的quick不兼容。

所以得用

local node = cc.uiloader:load("testPanel.json")
self:addChild(node,0)

button的监听addTouchEventListener已经不能使用了

换为了

local button = cc.uiloader:seekNodeByName(self,"Button")
   button:onButtonClicked(function(event)
   print("click")
end)

吞噬事件来实现面板弹出遮挡住下面的不响应事件只能在新的quick时间机制下用。

如果用旧的ccs那套东西,只能让root设置为可响应

注意ccs和quick3.3 final不兼容,尽量只用一种。

按钮一张图片下点击不变大了。

local ShopPanel = require("src.app.scenes.ShopPanel")
local MainScene = class("MainScene", function()
return display.newScene("MainScene")
end) function MainScene:ctor() -- self._topUIWidget = ccs.GUIReader:getInstance():widgetFromJsonFile("testPanel.json");
-- self:addChild(self._topUIWidget,0) local node = cc.uiloader:load("testPanel.json")
self:addChild(node,) -- local function touchEvent(sender,eventType)
-- if eventType == ccui.TouchEventType.ended then
-- print("clicked");
-- end
-- end local button = cc.uiloader:seekNodeByName(self,"Button")
button:onButtonClicked(function(event)
print("click")
end) local label = cc.uiloader:seekNodeByName(self,"fntLabel")
label:setString(); local AtlasLabel = cc.uiloader:seekNodeByName(self,"AtlasLabel")
AtlasLabel:setString(); local listView = cc.uiloader:seekNodeByName(self,"ListView") -- addTouchEventListener已经不能使用了
-- local function touchEvent(sender,eventType)
-- if eventType == ccui.TouchEventType.ended then
-- print("click");
-- end
-- end
-- local button = cc.uiloader:seekNodeByName(self,"Button_2")
-- button:addTouchEventListener(touchEvent) local p = ShopPanel.new()
self:addChild(p,)
end function MainScene:addHomebtnquick()
self._homeBtn = cc.ui.UIPushButton.new({normal="ItemSelect.png"})
:onButtonClicked(function()
print("homebtn click")
end)
:addTo(self)
:pos(display.cx,display.cy)
end function MainScene:onEnter()
end function MainScene:onExit()
end return MainScene

panel:代码

local ShopPanel = class("ShopPanel",function()
return display.newColorLayer(cc.c4b(,,,))
end) function ShopPanel:ctor()
-- self:initUI()
self:addTouch()
end function ShopPanel:addTouch()
self:setTouchEnabled(true)
self:setTouchSwallowEnabled(true)
--[[因为暂停层的图片是覆盖在游戏层上面的,
如果我们不把游戏层的触摸事件拦截的话,会触发游戏层的触摸事件。
addTouch就是为了在暂停层拦截掉所有的触摸事件。widget的root要设置成可交互]]
self:addNodeEventListener(cc.NODE_TOUCH_EVENT,function(event)
dump(event)
end)
end function ShopPanel:initUI() self.lv = cc.ui.UIListView.new {
-- bgColor = cc.c4b(200, 200, 200, 120),
viewRect = cc.rect(, , , ),
direction = cc.ui.UIScrollView.DIRECTION_VERTICAL}
-- :onTouch(handler(self, self.touchListener))
:addTo(self) -- add items
for i=, do
local item = self.lv:newItem()
local content = cc.ui.UILabel.new(
{text = "点击删除它DE"..i,
size = ,
align = cc.ui.TEXT_ALIGN_CENTER,
color = display.COLOR_WHITE}) item:addContent(content)
item:setItemSize(, ) self.lv:addItem(item)
end
self.lv:reload() end return ShopPanel

Quick 3.3 final 加载ccs的变化的更多相关文章

  1. Spring Boot 2.4 配置文件将加载机制大变化

    Spring Boot 2.4.0.M2 刚刚发布,它对 application.properties 和 application.yml 文件的加载方式进行重构.如果应用程序仅使用单个 applic ...

  2. cocos2d-x的lua脚本加载CocostudioUI两种方式

    前言 当前版本使用的是quick cocos2dx lua 3.3.UI使用cocostudio编辑器1.6.0.我们在程序里面可以使用两种方式进行解析UI.开始的时候用的是quick的方法, 结果遇 ...

  3. Android WebView 优化页面加载效果

    目前带有Web功能的APP越来越多,为了能够更好的使用WebView展示页面,可以考虑做相关的优化:WebView 缓存,资源文件本地存储,客户端UI优化. 可能有些人会说,为什么不做Native的, ...

  4. 简单实用的进度条加载组件loader.js

    本文提供一个简单的方法实现一个流程的进度条加载效果,以便在页面中可以通过它来更好地反馈耗时任务的完成进度.要实现这个功能,首先要考虑怎样实现一个静态的进度条效果,类似下面这样的: 这个倒是比较简单,两 ...

  5. 【消灭代办】第5周 - null拷贝,input自适应,进度条加载,颜色随机值

    2018.12.10 代办一:javascript中js怎么拷贝null的值 null属于简单类型的数值,直接进行拷贝即可: 2018.12.11 代办二:怎么让input自适应宽度? 这样是写下代办 ...

  6. 实现加载页Loading Page 的几种方法

    网页也可以像原生应用那样加入进度条或者其他的loading效果带来更好的等待体验,这里归纳几种我收集的实现loading page的方法,这几种方法在交互上都有利有弊,适用于不同应用.(PS:以下方法 ...

  7. jar类库加载顺序

    当我们启动一个tomcat的服务的时候,jar包和claess文件加载顺序: 1. $java_home/lib 目录下的java核心api 2. $java_home/lib/ext 目录下的jav ...

  8. 在Qt Quick中一个简单Hello World加载过程

    Qt5基本类图: QQmlEngine    QQmlEngine类提供了一个QML引擎,用于管理由QML文档定义的对象层次架构,QML提供了一个默认的QML上下文(根上下文,获取函数QQmlEngi ...

  9. 《Drools7.0.0.Final规则引擎教程》Springboot+规则重新加载

    在<Drools7.0.0.Final规则引擎教程>之Springboot集成中介绍了怎样将Drools与Springboot进行集成,本篇博客介绍一下集成之后,如何实现从数据库读取规则并 ...

随机推荐

  1. centos7 配置 NFS mount挂载服务器

    1. NFS服务端 安装NFS服务 yum install nfs_utils yum install rpcbind (系统默认已经有了,可查看下) 配置共享文件夹 1.    创建文件夹: mkd ...

  2. day27 CRM delete& action& 嵌入CRM

    课程目录:deleteactionpop up window嵌入crm项目 权限(未讲)学员交作业发邮件 代码路径:https://github.com/liyongsan/git_class/tre ...

  3. Inventory Update

    依照一个存着新进货物的二维数组,更新存着现有库存(在 arr1 中)的二维数组. 如果货物已存在则更新数量 . 如果没有对应货物则把其加入到数组中,更新最新的数量. 返回当前的库存数组,且按货物名称的 ...

  4. webstrom 配置eslint 自动修复错误

    1.展示效果 如何给vue项目添加eslint呢,如何自动修复呢? 先展示一下效果: 2.配置步骤 1.安装插件ESLint plugin webstrom 其实有个非常好用的插件,ESLint pl ...

  5. [VS]VS快捷键

    VS快速跳到某一行:CTRL+G VS鼠标移动到下一个高亮处:Ctrl+Shift+上下箭头 VS转到定义后返回:Ctrl+- VS折叠全部代码:Ctrl.M+Ctrl.O VS代码格式化:Ctrl. ...

  6. 十一、dbms_random(随机数生成器)

    1.概述 提供了内置的随机数生成器,可以用于快速生成随机数. 2.包的组成 1).initialize作用:用于初始化dbms_random包,必须提供随机数种子.语法:dbms_random.ini ...

  7. 文件目录tree显示,python

    #/usr/bin/python import os def travelTree(currentPath, count=0): if not os.path.exists(currentPath): ...

  8. L151

    In Toothy Prequel, Piranha-Like Fish Menaced Jurassic Seas You can call it a prehistoric prequel.Sci ...

  9. Linux:split命令详解

    split 可以将一个大文件分割成很多个小文件,有时需要将文件分割成更小的片段,比如为提高可读性,生成日志 语法 split(选项)(file)PREFIX 选项 -b:值为每一输出档案的大小,单位为 ...

  10. 分水岭分割算法(watershed segmentation)的C++实现(法1)

    运行环境:ubuntu16.04+Qt+opencv2.4.13 参考链接:http://blog.csdn.net/u010741471/article/details/45193521 water ...