Events 删除父视图后,RemoveEventListener不工作

Events 删除父视图后,RemoveEventListener不工作,events,button,addeventlistener,coronasdk,Events,Button,Addeventlistener,Coronasdk,我已经实现了一个函数,我已经添加了一个带有一些按钮的视图以及添加了Eventlistener 使用按钮侦听器,我转换到另一个视图并删除了最后一个视图,但按钮侦听器仍然处于活动状态 function loadingMenu() playBtn = display.newImage('play-btn.png', 170, 130) playBtn:addEventListener( "tap", listener ) instructionBtn = display

我已经实现了一个函数,我已经添加了一个带有一些按钮的视图以及添加了Eventlistener

使用按钮侦听器,我转换到另一个视图并删除了最后一个视图,但按钮侦听器仍然处于活动状态

 function loadingMenu()

     playBtn = display.newImage('play-btn.png', 170, 130)
    playBtn:addEventListener( "tap", listener )

    instructionBtn = display.newImage('instructions-btn.png', 150, 164)
   -- instructionBtn:addEventListener( "tap", instructionListener )

     creditBtn = display.newImage('credits-btn.png', 180, 201)
    --creditBtn:addEventListener( "tap",ceditsListener )

    titleBg = display.newImage('background-with-title.png')

   --titleView = display:newGroup()
     titleView = display.newGroup(titleBg, playBtn, instructionBtn,creditBtn)

end


function listener(event) 
      if titleView ~= nil then 
        playBtn:removeEventListener( "tap", listener ) 
        transition.to(titleView, {time = 300, y = -titleView.width, onComplete = function() --startButtonListeners('rmv') --titleView:removeSelf() display.remove(titleView) titleView = nil end}) 

       end 
       return true 
end

提前感谢

试试这个。这会有用的

    ----------------------------------------------------------------------------
    local playBtn,instructionBtn,creditBtn,titleBg,titleView
    ----------------------------------------------------------------------------
    function newfunction()
      print("inside newfunction...")
    end
    ----------------------------------------------------------------------------
    function listener()
       print("inside listener...")
       if titleView ~= nil then 
               playBtn:removeEventListener( "tap", listener ) 
               transition.to(titleView, {time = 300, y = -titleView.width, onComplete = newfunction()}) --startButtonListeners('rmv') --titleView:removeSelf() display.remove(titleView) titleView = nil end}) 
       end 
       return true 
    end
   ----------------------------------------------------------------------------
   function loadingMenu()
      playBtn = display.newImage("play-btn.png", 170, 130)
      instructionBtn = display.newImage("instructions-btn.png", 150, 164)
      creditBtn = display.newImage("credits-btn.png", 180, 201)
      titleBg = display.newImage("background-with-title.png")
      titleView = display.newGroup(titleBg, playBtn, instructionBtn,creditBtn)

      playBtn:addEventListener( "tap", listener )
   end
  ----------------------------------------------------------------------------
  loadingMenu()
  ----------------------------------------------------------------------------

试试这个。这会有用的

    ----------------------------------------------------------------------------
    local playBtn,instructionBtn,creditBtn,titleBg,titleView
    ----------------------------------------------------------------------------
    function newfunction()
      print("inside newfunction...")
    end
    ----------------------------------------------------------------------------
    function listener()
       print("inside listener...")
       if titleView ~= nil then 
               playBtn:removeEventListener( "tap", listener ) 
               transition.to(titleView, {time = 300, y = -titleView.width, onComplete = newfunction()}) --startButtonListeners('rmv') --titleView:removeSelf() display.remove(titleView) titleView = nil end}) 
       end 
       return true 
    end
   ----------------------------------------------------------------------------
   function loadingMenu()
      playBtn = display.newImage("play-btn.png", 170, 130)
      instructionBtn = display.newImage("instructions-btn.png", 150, 164)
      creditBtn = display.newImage("credits-btn.png", 180, 201)
      titleBg = display.newImage("background-with-title.png")
      titleView = display.newGroup(titleBg, playBtn, instructionBtn,creditBtn)

      playBtn:addEventListener( "tap", listener )
   end
  ----------------------------------------------------------------------------
  loadingMenu()
  ----------------------------------------------------------------------------

我试图修复你的代码,其中有很多随机评论,但我无法理解它。请先修复代码,清理它,进行适当的缩进,然后我可以试着理解它,看看你做错了什么。我试图修复你的代码,其中有很多随机注释,但我无法理解。请先修复代码,清理它,做适当的缩进,然后我可以试着理解它,看看你做错了什么。