【问题标题】:Corona SDK Android back key navigationCorona SDK Android 后退键导航
【发布时间】:2013-07-28 20:08:26
【问题描述】:

我在使用 Android 后退键时遇到问题。电晕论坛没有帮助我。无论我在哪个场景,后退按钮只会让我回到主菜单,而不是像它应该的那样回到上一个场景。

我的应用地图...

菜单 > 菜单 2 > 教程 > 教程 1

Tutorials 应该回到 Menu2,Tutorial1 应该回到 Tutorials,但两者都回到 Menu。

我在所有场景中都有这个功能,它们各自的“changeScene”可以返回上一个屏幕;但正如我所提到的,ALL 将我带回主菜单。

    local function moveBack()

     Runtime:removeEventListener("key", onKeyEvent)

     display.remove(allObjects);allObjects=nil

     director:changeScene("previousScene", "crossfade")

end

local function onKeyEvent( event )
        local returnValue = true

        if (event.phase=="up" and event.keyName=="back") then
                timer.performWithDelay(100,moveBack,1)
        end

        return returnValue
end
Runtime:addEventListener( "key", onKeyEvent )

【问题讨论】:

    标签: android sdk navigation coronasdk back


    【解决方案1】:

    首先,您可能不应该删除 key 的事件处理程序。如果您这样做,它将不会响应未来的后退按钮按下。

    其次,director:changeScene("previousScene", "crossfade") 将尝试转到名为 previousScene.lua 的文件中的场景。我不认为这是你想要做的。

    您可能应该设置一个“历史”表,您可以在其中记录要返回的下一个场景,并在 moveBack 函数中,转到列表中的最后一个场景,然后从表中删除条目。当您进入场景时,您会将场景添加到最后的表格中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-02
      • 2019-02-17
      • 1970-01-01
      相关资源
      最近更新 更多