幀動畫是個常見功能,我把這個封裝成一個函數。
--幀動畫
function MainScene:newFrameAnimation()
display.addSpriteFramesWithFile("loading.plist", "loading.png")
local frames = display.newFrames("loading%04d.png", 0, 11)
local sprite = display.newSprite("#loading0000.png", display.cx, display.cy)
local animation = display.newAnimation(frames, 0.8 / 11)
sprite:playAnimationForever(animation)
self:addChild(sprite)
end
然後調用:
function MainScene:ctor()
self:newFrameAnimation()
end
在實際使用中,可以新建一個層,然後把這個幀動畫放到這個層裏面。
function MainScene:newFrameAnimation()
local layer=display.newColorLayer(ccc4(0,0,0,150)):addTo(self,1000)
layer:setTouchEnabled(true)
display.addSpriteFramesWithFile("loading.plist", "loading.png")
local frames = display.newFrames("loading%04d.png", 0, 11)
local sprite = display.newSprite("#loading0000.png", display.cx, display.cy)
local animation = display.newAnimation(frames, 0.8 / 11)
sprite:playAnimationForever(animation)
layer:addChild(sprite)
end