2016-03-06 80 views
1

我正在製作一個遊戲,其中有一堆覆蓋圖和一個名爲game.lua的場景。我想要做到這一點,當我按回按鈕(Android設備上的硬件按鈕)時,如果有覆蓋層,關閉覆蓋層,並且如果沒有覆蓋層(只有game.lua場景),則會顯示exitmenu.lua(簡單彈出菜單)。全局返回按鈕

function onKeyEvent(event) 
     if(event.keyName == "back") then 
      local CurrentScene = composer.getSceneName("current") 
      local CurrentOverlay = composer.getSceneName("overlay") 

      if CurrentScene == "Scenes.game" and CurrentOverlay == nil then 
       composer.showOverlay("Scenes.exitmenu", {isModal = true}) 
       return true      
      elseif CurrentOverlay ~= nil and CurrentOverlay ~= "Scenes.exitmenu" then 
       composer.hideOverlay("fade", 500) 
       return true 
      end 
     end 
end 
Runtime:addEventListener("key", onKeyEvent) 

會發生什麼事是,當我按後退按鈕,同時疊加上,函數隱藏疊加,也顯示exitmenu.lua覆蓋。我不知道我的代碼有什麼問題,任何建議都非常感謝。

+0

在這裏你可以回答(並接受)你自己的問題,而不是編輯。這樣你的問題就從「未回答」列表中刪除:) – hugomg

+0

哦,沒有想到那個!謝謝你,先生。會做! – FICHEKK

回答

0

編輯:我修好了!我需要添加和event.phase == "down",這使得我的按鈕按功能只有一次。這是修復。