0

I am using Lua with Gideros and having alert box to show up when back button is pressed.According to Gideros documentation, when first button is pressed, it returns index 1 but it does not really seem to work this way.I tested the app on my android phone.I realized the oncomplete function is not getting called at all, since I tried using a print statement and even it was not executed, so any idea why is is not getting called?

local function onKeyDown(event)
if event.keyCode == KeyCode.BACK then

        local alertDialog = AlertDialog.new("Confirmation", "Are you sure you want to exit?", "Cancel", "Yes")
        alertDialog:show()
        stage:addEventListener(Event.COMPLETE, oncomplete)
        end
end

function oncomplete(e)
if e.buttonIndex == 1 then 
stage:addEventListener(Event.APPLICATION_SUSPEND, suspend)
application: exit()
end

end

function suspend()
application: exit()
end

-- key events are dispatched to all Sprite instances on the scene tree (similar to mouse and touch events)
stage:addEventListener(Event.KEY_DOWN, onKeyDown)
systemdebt
  • 4,589
  • 10
  • 55
  • 116

1 Answers1

1

As per the conversation the issue was that the event listener for the alert box close event was being attached to the stage instead of the alert dialog.

stage:addEventListener(Event.COMPLETE, oncomplete)

instead of

alertDialog:addEventListener(Event.COMPLETE, oncomplete)

Etan Reisner
  • 77,877
  • 8
  • 106
  • 148