Quick Cocos2dx 場景轉換問題

2022-02-02 01:16:15 字數 2182 閱讀 1163

專案結構是這樣子的:

主場景**是這樣子的:

local mainscene = class("

mainscene

", function

()

return display.newscene("

mainscene")

end)

function

mainscene:ctor()

self.layer =display.newlayer();

self:addchild(self.layer)

self.item0 = ui.newttflabelmenuitem()

self.item1 = ui.newttflabelmenuitem()

self.item2 = ui.newttflabelmenuitem()

self.menu =ui.newmenu()

self.layer:addchild(self.menu)

endfunction

mainscene:onenter()

self.layer:settouchenabled(

true

)end

function

mainscene:ontouch(event, x, y)

print

(event)

endfunction

mainscene:onexit()

endreturn mainscene

新場景**是這樣子的:

local anotherscene = class("

anotherscene

", function

()

return display.newscene("

anotherscene")

end)

function

anotherscene:ctor()

print("

constructor of anotherscene")

endfunction

anotherscene:onenter()

print("

custom anotherscene:onenter")

ui.newttflabel()

:pos(display.cx, display.cy)

:addto(self)

endreturn anotherscene

可是點選點選start之後進入的是乙個黑色的新場景,debug內容如下:

根本就沒有列印anotherscene.lua

ctor()和onenter()裡面的提示內容。

經查驗qucik cocos2dx原始碼,發現display.newscene("anotherscene")新建了乙個名為"anotherscene"的ccscene,

而不是去取anotherscene.lua,如下:

function

display.newscene(name)

local scene =ccsceneextend.extend(ccscene:create())

scene.name = name or""

return

scene

end

於是將item0的listener的**如下:

print("

start touched")

local anotherscene = require("")

nexscene =anotherscene:new();

ccdirector:shareddirector():replacescene(cctransitionfade:create(

1, nexscene))

然後就正常了。

如下:

這也許就是指令碼語言的便利與不便利之處了。

QUICK COCOS2DX建立新專案

建立新專案之前,確保已經正確設定了quick cocos2dx root環境變數 啟動 終端 應用程式,然後進入需要放置新專案的目錄 cd desktop執行create project.sh命令,並指定專案的 package name quick cocos2dx root bin create ...

quick cocos2d x的Image使用方法

image的使用方法相對簡單。quick cocos2d x中可以指定該image是否使用9宮圖來進行渲染。不使用9宮格的image建立 local img cc.ui.uiimage.new test.png 使用9宮格的image建立 local img cc.ui.uiimage.new te...

Quick Cocos2d x 觸控機制詳解

cocos2d x 原本的觸控機制存在一些限制,在使用中需要開發者做不少額外的處理。而且 cocos2d x 的觸控事件是按照目標的優先順序來分派的,而不是按照目標的顯示層級來分派。針對這個問題,quick cocos2d x 提出了自己的一套觸控機制。本文詳細介紹了這套新機制的實現原理和用法。以下...