首页 > 代码库 > Quick 3.3 final 加载ccs的变化
Quick 3.3 final 加载ccs的变化
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,0) -- 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(60); local AtlasLabel = cc.uiloader:seekNodeByName(self,"AtlasLabel") AtlasLabel:setString(60); 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,20)endfunction MainScene:addHomebtnquick() self._homeBtn = cc.ui.UIPushButton.new({normal="ItemSelect.png"}) :onButtonClicked(function() print("homebtn click") end) :addTo(self) :pos(display.cx,display.cy)endfunction MainScene:onEnter()endfunction MainScene:onExit()endreturn MainScene
panel:代码
local ShopPanel = class("ShopPanel",function() return display.newColorLayer(cc.c4b(255,255,255,128))end)function ShopPanel:ctor() -- self:initUI() self:addTouch()endfunction ShopPanel:addTouch() self:setTouchEnabled(true) self:setTouchSwallowEnabled(true) --[[因为暂停层的图片是覆盖在游戏层上面的, 如果我们不把游戏层的触摸事件拦截的话,会触发游戏层的触摸事件。 addTouch就是为了在暂停层拦截掉所有的触摸事件。widget的root要设置成可交互]] self:addNodeEventListener(cc.NODE_TOUCH_EVENT,function(event) dump(event) end)endfunction ShopPanel:initUI() self.lv = cc.ui.UIListView.new { -- bgColor = cc.c4b(200, 200, 200, 120), viewRect = cc.rect(0, 0, 420, 380), direction = cc.ui.UIScrollView.DIRECTION_VERTICAL}-- :onTouch(handler(self, self.touchListener)) :addTo(self) -- add items for i=1,8 do local item = self.lv:newItem() local content = cc.ui.UILabel.new( {text = "点击删除它DE"..i, size = 20, align = cc.ui.TEXT_ALIGN_CENTER, color = display.COLOR_WHITE}) item:addContent(content) item:setItemSize(400, 80) self.lv:addItem(item) end self.lv:reload() endreturn ShopPanel
Quick 3.3 final 加载ccs的变化
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。