关于quick-cocos2d-x弹出菜单问题

我做了一个弹出菜单,可是它在弹出之前有那么一瞬间显示了原比例图片后再进行弹出,视觉效果看起来很糟糕,该如何解决呢。

local output = ui.newImageMenuItem({
image = “image/beibao.jpg” ,
imageSelected = “image/meiri.jpg”,
listener = function()

    local sequence = transition.sequence({
        --CCMoveTo:create(0.5, CCPoint(display.cx, display.cy)),
        CCScaleTo:create(0.0 , 0.0),
        CCScaleTo:create(0.05 , 0.2),
        CCScaleTo:create(0.05 , 0.4),
        CCScaleTo:create(0.05 , 0.6),
        CCScaleTo:create(0.05 , 0.8),
        CCScaleTo:create(0.05 , 1.0),nil
    })
        self:createLayer()
        sp:runAction(sequence)
        
        print("close")
        --玩家点击开始游戏按钮,跳转到选择英雄界面
    end ,
    x = display.cx -200 , 
    y = display.cy - 200
    })

local menu = ui.newMenu({output})
self:addChild(menu)

end

function HostScene:createLayer()
local layer = display.newLayer()
self:addChild(layer)
layer:setTouchEnabled(true)
layer:setTouchSwallowEnabled(false)
layer:setTouchMode(cc.TOUCH_MODE_ONE_BY_ONE)
layer:addNodeEventListener(cc.NODE_TOUCH_EVENT , function(event)
if event.name == “began” then
print(“layer began”)
elseif event.name == “moved” then
print(“layer moved”)
elseif event.name == “ended” then
print(“layer ended”)
end
return true
end)

sp = display.newSprite(“Player/chuanzhang.jpg” , display.cx , display.cy)
layer:addChild(sp)
sp:setTouchEnabled(true)
sp:setTouchSwallowEnabled(false)
sp:setTouchMode(cc.TOUCH_MODE_ONE_BY_ONE)
sp:addNodeEventListener(cc.NODE_TOUCH_EVENT , function(event)
if event.name == “began” then
elseif event.name == “moved” then
print(“sp moved”)
elseif event.name == “ended” then
print(“sp ended”)
end
return true
end)

首先确认下支不支持scale 0 这种, 如果不支持 可以把整体设置成scale 0.01(不是动画) 之类的, 然后runAction

支持scale(0),谢谢你啦 :2:

既然动作的执行时间是0,你完全可以直接设置 scale 为0.0, 通过action执行未必完全就是0秒,想想schedule。。