1
我遇到問題,因此當我調用storyboard.purgeScene()時,我的全局顯示對象似乎被刪除。當我說「全球性」,它們其實我把它們存儲在用戶定義的故事板表,避免使用實際的全局變量:清除場景會導致全局顯示對象從內存中刪除
我的圖像數據庫存儲在外部文件toy_database.lua:
local storyboard = require "storyboard";
storyboard.globalVars.toys = {
ball1 = {
src = 'img/stock-vector-soccer-ball-trimmed.png',
}
}
main.lua:
我在main.lua加載某些圖像:
storyboard.globalVars.toys["ball1"].imgPtr = display.newImageRect(storyboard.globalVars.toys["ball1"].src, w, h);
然後我去另一個場景:
storyboard.gotoScene("mainFloorScene");
這裏一切都很好,顯示對象是accessable。我清除那個場景並轉到另一個場景:
storyboard.gotoScene("openBoxScene")
[in didExitScene()]: storyboard.purgeScene("mainFloorScene")
這裏的一切都很好。最後,我再回到第一現場,清除途中當前場景:
storyboard.gotoScene("mainFloorScene", "fade", 400);
[in didExitScene()]: storyboard.purgeScene("openBoxScene")
早在第一個場景中的圖像對象已被刪除。如果我註釋掉行:
storyboard.purgeScene("openBoxScene")
它工作得很好,所以我有一個解決方法,但我想這種行爲解釋。我期望場景清除只能刪除那個場景的局部顯示對象。
發生了什麼事?
iamge被刪除,或者只是不顯示? – speeder