欢迎各位童鞋转载,转载请注明出处:http://blog.youkuaiyun.com/song_hui_xiang
作者新浪微博:http://weibo.com/u/3168848533
作者腾讯微博:http://t.qq.com/song_huixiang
local sprite = CCSprite:create("Icon.png")
sprite:setPosition(ccp(300,400))
menuLayer:addChild(sprite)
local function getNowXY(sender)
print("sprite x , y ==",sender:getPositionX(),sender:getPositionY())
end
local moveto1 = CCMoveTo:create(1,ccp(sprite:getPositionX(),sprite:getPositionY()+200)) --sprite:getPositionY()+200已经等于600
local call1 = CCCallFuncN:create(getNowXY)
local moveto2 = CCMoveTo:create(1,ccp(sprite:getPositionX(),sprite:getPositionY()-200)) --sprite:getPositionY()-200已经等于200
local call2 = CCCallFuncN:create(getNowXY)
local array = CCArray:create()
array:addObject(moveto1)
array:addObject(call1)
array:addObject(moveto2)
array:addObject(call2)
sprite:runAction(CCSequence:create(array))
--打印结果如下,而不是所认为的300 400,在执行动画之前两个CCMoveTo的坐标就已经固定值
-- [LUA-print] sprite x , y == 300 600
-- [LUA-print] sprite x , y == 300 200