【问题标题】:Corona SDK - How to implement Object Cancelled touchCorona SDK - 如何实现对象取消触摸
【发布时间】:2016-05-20 18:45:24
【问题描述】:

我正在使用 Corona SDK 开发游戏,我有很多球要在游戏中显示。我已经为所有球对象实现了TouchListener。

代码在这里

local function ballTouchEvent(e)

    local touchedBall = e.target
    local phase = e.phase

    if phase == "began" then

        log("Touch began Phase")    

    elseif phase == "moved" then

         log("Moved Phase")

    elseif phase == "ended" or phase == "cancelled" then

        log("Ended Phase")  

    end

    return true
end

ball:addEventListener("touch",ballTouchEvent)

当用户触摸任何显示的球并将他的触摸移动到白色背景(没有球的地方)时,我想实现一些功能。谁能指导我如何实现这一点?提前致谢

【问题讨论】:

  • 您是否使用任何组来显示您所有的球?如果是,那么您可以将触摸侦听器添加到该组以解决您的问题
  • 我可以在整个屏幕上显示该组吗?

标签: android ios lua coronasdk


【解决方案1】:

在所有球后面实现一个 React 并为该反应实现点击侦听器。这样当用户离开空白区域时,将调用反应侦听器的结束阶段,您可以将您的实现放在那里您想做的事情。

function scene:create( event )
        sceneGroup = self.view
        local rect = display.newRect(centerX, centerY, constants.screenWidth, constants.screenHeight)       
        -- rect:setFillColor( 0.0 )
        rect.name = "background"
        rect:addEventListener("touch",backTouchEvent)
sceneGroup:insert( rect )
end

【讨论】:

    【解决方案2】:

    您可以添加一个组,然后处理触摸侦听器并在组的结束触摸调用中完成您的工作。

    请访问以下链接

    Touch Event detection issue

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-01
      • 2012-02-26
      • 2014-01-07
      • 2012-12-18
      • 1970-01-01
      • 1970-01-01
      • 2014-06-20
      相关资源
      最近更新 更多