【问题标题】:Flash CS6 AS3 play sound on one frame only, stop when left frameFlash CS6 AS3 只播放一帧声音,左帧停止
【发布时间】:2013-08-07 14:51:51
【问题描述】:

我有一个场景,其中每个屏幕都有一个框架,我想向用户显示。每个帧都有一个包含该屏幕所有元素的影片剪辑。第一帧的影片剪辑在 frame1 中设置了声音层。问题是,当我导航到另一个屏幕时,音乐继续播放。

我怎样才能让它只在电影剪辑在屏幕上可见时播放?我试图让其他屏幕的“ENTER_FRAME”监听器并使用SoundMixer.stopAll(); 停止音乐。唯一的问题是,当我重新进入带有音乐的框架时,它无法启动。

我正在使用同步设置:流。

【问题讨论】:

    标签: actionscript-3 flash audio flash-cs6


    【解决方案1】:

    Flash IDE 有许多不同种类的声音,最重要的是StreamEvent

    听起来您正在使用Event 类型的声音,因为即使您离开画面,声音也会继续播放。除了SoundMixer.stopAll().,没有办法停止Event的声音

    您需要在 Flash IDE 中将声音类型设置为Stream。然后,将它放在一个 MovieClip 中,并确保剪辑中有足够的帧来持续整个声音的持续时间。然后,将该 MovieClip 放置在您的主场景中,现在它应该会在您移动到不同的帧时停止。

    【讨论】:

    • 我正在考虑采用这种方法,但认为可能有更简单的方法......
    • 很遗憾,我不认为有,但如果您愿意,还有很多更复杂的方法。
    • 当我使用 Stream 移动到下一帧时,声音仍然没有停止。知道为什么它不会吗?
    • 有时,如果在一帧的 MovieClip 中有 Stream 类型的声音,Flash 会出现故障。
    猜你喜欢
    • 2016-08-08
    • 2023-04-08
    • 2012-05-28
    • 2012-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多