【问题标题】:addChild tells root.gotoAndStop();addChild 告诉 root.gotoAndStop();
【发布时间】:2011-11-07 01:21:42
【问题描述】:

如何从使用 addChild 添加的movieClip 的时间线中将根时间线告诉root.gotoAndStop(2);

在主线我有

addChild(fade_eng);

在淡入淡出 我在第 20 帧有以下内容

root.gotoAndStop(2);
this.gotoAndStop(1);

但我得到 1061: Call to a possible undefined method gotoAndStop through an reference with static type flash.display:Stage。

【问题讨论】:

    标签: flash actionscript-3


    【解决方案1】:

    root 类型转换为MovieClip

    MovieClip(root).gotoAndStop(1);
    

    This thread 应该彻底解释这个过程以及它是如何工作的。

    【讨论】:

    • 是的,刚刚想通了。如果我继续将根类型转换为来自其他子 MovieClip 的 MovieClip,是否会因任何原因损害性能?
    • @Denoteone — 不应该有性能问题,如果有,只需在某处保留对已投射影片剪辑的引用。但是,基于 OOP 原则,您的应用程序架构存在缺陷:较低层次的对象不应该能够更改层次结构中较高对象的状态。相反,您应该定义自己的“入口点”类并将其添加到根(主舞台),然后依靠事件模型(从子 MC 调度事件)来停止或暂停您的“入口点”类。
    • @joncys 我同意完成。这个问题是在我测试某些东西(不是为了生产)时出现的,当我注意到我无法控制主要时间线时,我只是好奇为什么。不过感谢您提供的信息。
    • 除非您已经有一个框架,或者该项目将具有相当大的规模/长期工作,否则没有必要将时间投入到所描述的模型中。
    • ...嗯?您可以使用 Class() 进行投射吗?哇,我学到了新东西,谢谢!
    猜你喜欢
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-20
    • 2016-03-29
    • 2011-09-29
    • 2014-04-18
    • 1970-01-01
    相关资源
    最近更新 更多