我对lua编码很新。在我的介绍页面中,我想在播放背景音乐的同时每0.5秒加载一个不同的图像。这是我的代码(不工作):
function carica_indice()
im=math.random(1,4)
schermataMenu=display.newImage(immagine[im],W,H)
volte=volte+1
end
function menuprincipale()
media.playSound( "sigla1.mp3" )
immagine={"firstscreen.png","firstscreen1.png","firstscreen2.png","firstscreen3.png","firstscreen4.png","firstscreen5.png"}
schermataMenuGroup=display.newGroup()
while volte<32 do
schermataMenu=display.newImage(immagine[im],W,H)
timer.performWithDelay(500,carica_indice())
end
end
答案 0 :(得分:1)
timer.performWithDelay(500,carica_indice())
这里你实际上是通过使用这些括号来调用函数。 将函数作为参数传递如下:
timer.performWithDelay(500,carica_indice)
计时器实际上并没有阻止你的代码执行,所以while循环将继续添加很多计时器,然后才会触发第一个32。 我猜测volte是某种限制?为此,您可以要求计时器重复多次迭代而不是像这样的while循环:
changeBkg = timer.performWithDelay(500, carica_indice, 32)
当用户点击播放时,您现在可以取消定时器:
timer.cancel(changeBkg)