Corona SDK - 使用scrollview侦听器以滚动动量移动图像

时间:2013-07-03 02:44:26

标签: lua scrollview corona

我想用滚动视图中的滚动动作移动我的“背景”图像,我希望背景比滚动视图的内容移动得慢,给人以深度印象。这是我正在使用的代码。它可以工作,但只有在屏幕接触时才有效。我希望它继续以滚动动力移动。我做错了什么?

local function scrollListener( event )
    local phase = event.phase
    local x, y = scrollView:getContentPosition()

    if phase == "moved" then
       if event.limitReached then
        -- do nothing
       else
            bg.x = x  /3
       end
    end

    return true
end

1 个答案:

答案 0 :(得分:0)

我认为你想要实现一些视差滚动。 你应该从scrollview scrollListener(事件)“移动”事件

获得拖动距离
local isListening = false

local function scrollListener( event )
    local phase = event.phase

    if "began" == phase then
        if(isListening) then
            Runtime:addEventListener( "enterFrame", updateBgPos )
            isListening = true
        end
    elseif phase == "moved" then
       if event.limitReached then
           Runtime:removeEventListener( updateBgPos )
           isListening = false
       end
    end

    return true
end

local function updateBgPos(event) 
    local x, y = scrollView:getContentPosition()
    bg.x = x / 3
end