Lua中每隔半秒加载图像。

我对 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 
点赞
用户2726734
用户2726734

timer.performWithDelay(500,carica_indice())

这里你实际上是使用括号来调用函数。像这样将函数传递为参数:

timer.performWithDelay(500, carica\_indice)

计时器实际上不会阻止您的代码执行,因此 while 循环将继续添加许多计时器,直到第一个 32 个计时器触发。我猜测 volte 是某种限制吗?对于这个问题,您可以要求计时器重复多个迭代而不是使用 while 循环,像这样:

changeBkg = timer.performWithDelay(500, carica_indice, 32)

现在当用户点击播放时,您可以取消计时器:

timer.cancel(changeBkg)
2015-03-21 00:57:46