Studio 2.0 lua 动画帧事件,求指教!

代码1:
local action = cc.CSLoader:createTimeline(“GameScene.csb”)

node:runAction(action)
action:gotoFrameAndPlay(0, 60, true)
self:addChild(node)

local function onFrameEvent(frame)
    cclog("***************")
    if nil == frame then
        return
    end

    local str = frame:getEvent()
    cclog("str:"..str)
    if str == "end" then
        frame:getNode():setColor(cc.c3b(0, 0, 0))
    end
end

action:setFrameEventCallFunc(onFrameEvent);

以上基本是官方的例子,动画正常播放,但无法正常进入帧事件!

代码2:
local action = cc.CSLoader:createTimeline(“GameScene.csb”)

node:runAction(action)
action:gotoFrameAndPlay(0, 60, true)
self:addChild(node)

local function onFrameEvent(frame)
    cclog("***************")
    if nil == frame then
        return
    end

    local str = frame:getEvent()
    cclog("str:"..str)
    if str == "end" then
        frame:getNode():setColor(cc.c3b(0, 0, 0))
    end
end

action:setFrameEventCallFunc(onFrameEvent());

能进入帧事件,日志输出了:**************** 但无法得到frame。

需要registerScriptHandler() 一下

看来已经解决了:2:

其实没解决 registerScriptHandler() 是无法获得 frame 的 ,,frame一直是空的

你用的资源是自己的还是例子里面的?

就是用自己的以上代码

我指的是动画资源

用我自己的,我就拿了几张图片做测试

谢谢你,原来是studio 里面的帧事件没有设置好,所以frame为空,太谢谢了

请问一下 你是怎么设置的啊 为什么我得还是不能获取到

http://www.cocoachina.com/bbs/read.php?tid-281842-keyword-֡�¼�.html

朋友,你的问题解决了?我怎么看不出来 你说的是什么意思 你列了两个代码有什么区别?

这个问题需要怎么解决呢?我看不出来 registerScriptHandler() 在哪里调用的呀?

quick3.3
action:setFrameEventCallFunc(handler(self, self.onFrameEvent))
也是没有调用到onFrameEvent
请问要怎么才能判断到帧事件

为啥在 3.4 不能使用啊