【问题标题】:Using an external class with multiple frames on the timeline and multiple stage placed buttons在时间轴上使用具有多个帧和多个舞台放置按钮的外部类
【发布时间】:2010-09-21 14:19:42
【问题描述】:

我在制作具有多个放置符号的帧的 Flash 应用程序时遇到问题,因为我无法同时为对象声明所有事件侦听器,我发现即使我将它们都在第一帧,添加事件侦听器,然后单击到下一帧,然后按钮将在该帧上不起作用。

有谁知道我该如何解决这个问题?我确实认为自己是一个相当称职的 AS3 程序员,直到我意识到我不知道如何处理这种事情

已解决:我从外部类初始化剪辑,然后根据需要添加和删除它们,并将它们的 x 和 y 放在 addChilding 上。谢谢各位

【问题讨论】:

    标签: flash actionscript-3 class frames


    【解决方案1】:

    同时使用 Flash 和诸如 FlashBuilder 之类的外部 IDE 时,我倾向于在 Flash 中放置尽可能少的代码并在 FlashBuilder 中处理大部分逻辑。由于您指的是外部类,我假设您可能有类似的设置,而一些编码是在 Flash IDE 之外完成的。

    我不了解您的项目,因此可能无法将您的所有代码外部化,或者可能为时已晚,但这是我的首选。我发现跟踪事件监听器、触发的功能、舞台上的孩子数量、谁在什么时候做什么等更容易......

    另一种看待它的方式,也可以是将您的方法封装在您的 MovieClip 中,以便它们不依赖于帧并使用事件调度来调用主时间轴上的方法

    【讨论】:

    • 嗯,我的项目刚刚开始,因为我有很多想法,但我意识到我在第一个障碍时被难住了,因为我没有按照我通常的方式做事。问题是movieclips已经在舞台上,所以它们没有正确初始化,但你认为我应该只获取它们的位置并将它们动态地放置在外部类中,然后在我“更改帧”时将它们删除吗?
    • 我认为从外部类中操作它们会更容易。它们不会依赖于框架,而是依赖于“事件”。另外,我认为最好的做法是把你的逻辑放在一个地方,而不是把它放在外部类和 Flash IDE 中
    【解决方案2】:

    好吧,更好的方法是将所有符号放在第 1 帧上,并在第一帧上添加事件侦听器,或者将它们添加到文档类中。您可以将那些不需要在第一帧可见的符号放在舞台之外,然后您可以将它们带到特定框架上的舞台上。

    如果它们在第一个 Frame 中,则侦听器将附加到符号上,否则您必须将它们附加到定义和使用它们的那个框架上。 并且一旦,监听器被附加到按钮或任何 DisplayObjects 上,那么无论帧是否改变都无关紧要。可能是您的按钮在逐帧动画期间发生了变化..

    另一种看待它的方式,也可以是将您的方法封装在您的 MovieClip 中,以便它们不依赖于帧并使用事件调度来调用主时间轴上的方法

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-04
      • 1970-01-01
      • 2017-04-05
      • 1970-01-01
      • 1970-01-01
      • 2013-04-04
      • 1970-01-01
      • 2012-04-21
      相关资源
      最近更新 更多