单击时重新启动闪存

Posted

技术标签:

【中文标题】单击时重新启动闪存【英文标题】:Restart flash on click 【发布时间】:2012-02-05 10:27:09 【问题描述】:

我正在尝试使用重启按钮重启我的闪存。我使用 gotoAndPlay(0),但没有任何反应。我确定正在调用 click 事件处理程序,因为我使用了跟踪语句进行验证。

rs.addEventListener(MouseEvent.CLICK, restart);

function restart(event:MouseEvent):void 
    gotoAndPlay(0);

【问题讨论】:

它是一个什么样的应用程序,代码放在哪里?听起来它可能是从一些电影剪辑中调用的,而不是从舞台上调用的。或者舞台可能已经在第一帧(这是一般情况,除非你在时间轴上做动画或代码) 这是一种法语语言的代词算法。它像一棵树一样工作。我想舞台已经在第一帧了。 【参考方案1】:

第一帧是第 1 帧,而不是第 0 帧。

不知道为什么 adobe 决定不让帧从零开始,但他们做到了:/

【讨论】:

其他评论中提出的问题也非常有效。重启方法放在哪里?您是否在 1 以外的帧上?会在第 1 帧重新启动您的闪光灯吗?【参考方案2】:

如果您已将对象(如按钮或图形)添加到舞台,但从未实际使用过舞台的时间轴,则舞台将开始并停留在第一帧。所以'gotoAndPlay' 在这种情况下不起作用。无论如何,它只会重新启动动画有用,因为它不会自行重置任何代码。

您需要决定您真正想要重置哪些部分以及可以保留哪些部分。您可能不想从一开始加载的内存中删除资产,只是为了再次下载它们。一些物品可以保留,其他物品应该被移除。

据我所知,除了重新加载整个页面之外,没有简单的方法可以重置 Flash 应用程序。以下是手动“重置”应用程序的一些一般步骤:

    为您的初始化代码创建一个方法: 对象创建、添加到显示列表、添加事件监听器。 点击一下:从舞台上移除所有对象,移除它们的所有事件监听器。 再次调用初始化方法。

理想情况下,您将 init 方法中的引用设置为新变量,以便旧的可以被垃圾回收。根据代码结构,您可能必须手动将一些设置为空。确保不要保留对不再需要的对象的任何引用。

【讨论】:

以上是关于单击时重新启动闪存的主要内容,如果未能解决你的问题,请参考以下文章

小米笔记本怎样重装原装系统

统一单击重新启动按钮后如何显示广告然后重新启动场景?

IBM Mobilefirst:单击通知时应用程序重新启动

如何在通知单击时重新启动/刷新活动内容

在单击按钮时重置/重新初始化/重新启动 UIViewController 视图的最简单(正确)方法是啥?

Unity - 单击重新启动按钮后如何重新启动乐谱?