0

我在舞台上有一个 SimpleButton,在它的点击事件中,我使用removeChild(). 重新添加按钮时,它会以“结束”状态重新添加,而不是预期的“向上”状态。

我很确定这是一个错误,所以我提交了一个 JIRA:http ://bugs.adobe.com/jira/browse/SDK-31445 ,我现在的问题是如何修复它,如果有人有类似的经验。

我试过的:

  • 使用visible = false代替有效,但我更愿意将其完全从舞台上移除,因为我正在开发的游戏可能有很多弹出窗口/屏幕。
  • 手动触发mouse_out事件 - 不起作用,并且在任何情况下,mouse_out事件都会按预期触发(也许在重置为 up 状态之前,它会检查它是否已添加到舞台,发现不是,然后提前退出)
  • 重置舞台焦点 - 我认为这是舞台焦点的问题,因为当按钮隐藏时你会失去焦点,但重置它并没有解决它。
  • 当它被隐藏时,我可以暂时交换 over 和 up 状态,但这似乎是一个丑陋的修复。
4

1 回答 1

1

我也遇到了这个问题,删除一个按钮并添加另一个按钮以响应单独精灵上的鼠标向上事件。IE鼠标当时不在任何一个按钮上,但是当第一个按钮(有问题的那个)以前被删除,鼠标确实在它上面,所以它没有收到 mouseOut 事件并保持在 over 状态。使用可见性来解决这个问题,这对我的需求来说是可以的,但替代答案是在将其添加到显示列表之前替换为按钮的新实例。

于 2011-10-18T21:49:50.230 回答