2013-10-24 28 views
1

对于我的代码(corona SDK),我有一个任意显示对象“激光”在我触摸时淡出,并在我放开时重新显示。然而;在onTouch函数中,如果我将“开始”转换alpha设置为0而不是大于0的任何值,那么我的显示对象将永久保持隐藏在0 alpha处。是什么赋予了?下面的代码(现在,我使用的α= 0.01,因为它是非常接近):Corona SDK:如何在转换完成后重新创建对象?

local function fadeBack(var) 
     transition.to(laser, {time = 700, alpha = 1.0}); 
end 

local function onTouch(event) 
    if(event.phase == "began")then 
    tween = transition.to(laser, {time = 100, alpha = 0}); 
    elseif(event.phase == "ended") then 
    fadeBack(); 
    end 
end 

回答

0

如果你想阻止一个过渡,使用此:

local trans 

local function fadeBack() 
    transition.cancel(trans) 
end 

local function onTouch(event) 
    if event.phase == "began" then 
     trans = transition.to(laser, {time = 100, alpha = 0}) 
    elseif event.phase == "ended" then 
     fadeBack() 
    end 
end 
0

过渡。在选项中支持和onComplete参数,这样当转换完成时,可以调用一个函数,并且在该函数中,可以重新设置任何需要的值。

相关问题