繁体   English   中英

转换对象两次? (Corona SDK)

[英]transition object twice? (Corona SDK)

我在转换时遇到问题! 例如:我有一个对象和一个按钮。 我希望该对象在我按下按钮时淡出,然后在我再次按下按钮时希望我的对象淡入。但是我无法在我的对象中淡出,感觉就像它消失了! 对于过渡,我使用transition.to,例如:

object = transition.to(object,{time = 500,alpha = 0})

但是当我在这个确切的场景中执行另一个功能以淡入淡出时,它根本就根本不想工作(按下按钮,但是什么也没发生,甚至出错)。

请帮帮我!

您的代码:

    object = transition.to( object, {time=500, alpha=0})

您正在将过渡处理程序保存到该对象。 尝试这个:

    trans = transition.to( object, {time=500, alpha=0})

然后,如果您想取消转换,则可以执行此操作

    transition.cancel(trans)

您可以在此处检查Transition。的用法。http://developer.coronalabs.com/node/2407

干杯!

试试这个我不知道正确的代码,但是效果很好:

local myRectangle = display.newRect(100, 100, 150, 50)
myRectangle.strokeWidth = 3
myRectangle:setFillColor(140, 140, 140)
myRectangle:setStrokeColor(180, 180, 180)

local button = display.newRect(100, 200, 50, 50)
button.strokeWidth = 3
button:setFillColor(140, 140, 140)
button:setStrokeColor(180, 180, 180)

local buttonfun=function(event)
if event.phase=="ended" then
print("fade")
if myRectangle.alpha ==1.0 then
transition.to( myRectangle, { delay=1, time=1000, alpha=1.0, alpha=0.0} )
myRectangle.alpha=0.0
print("alpha"..myRectangle.alpha)
else
transition.to( myRectangle, { delay=1, time=1000, alpha=0.0, alpha=1.0} )
myRectangle.alpha=1.0
print(myRectangle.alpha)
end
end
return true
end
button:addEventListener("touch", buttonfun)

在第一次按下按钮时编写此trans = transition.to( object, {time=500, alpha=0}) ,因此您必须使用小鸡make boolen变量才能执行两次此操作。 第二次将其淡入淡出,您必须使alpha=1

例如:

local  trans 
function  Listner  (event)
transition.cancel(trans)
trans = nil 
end

function  onPress(event)
if(flage== true) then 

flage = false  
trans = transition.to( object, {time=500, alpha=0 , onComplete =Listner  })

else
flage = true
trans = transition.to( object, {time=500, alpha=1 , onComplete =Listner  })

end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM