0

ステージに SimpleButton があり、そのクリック イベントで を使用して削除しremoveChild()ます。ボタンを再追加すると、期待どおりの「アップ」状態ではなく、「オーバー」状態で再追加されます。

私はそれがバグであると確信しているので、JIRA を提出しました: http://bugs.adobe.com/jira/browse/SDK-31445、私の質問は、誰かが同様のことをした場合、それを修正する方法についてです。経験。

私が試したこと:

  • 代わりに使用しvisible = falseても機能しますが、私が取り組んでいるゲームには多くのポップアップ/スクリーンがある可能性があるため、ステージから完全に削除することをお勧めします。
  • イベントmouse_outを手動で起動する - 機能せず、いずれにせよ、mouse_outイベントは期待どおりに起動します (おそらく、アップ状態にリセットする前に、ステージに追加されているかどうかを確認し、追加されていないことを確認し、早期に終了します) )
  • ステージ フォーカスのリセット - ボタンを非表示にするとフォーカスが失われるため、ステージ フォーカスの問題だと思いましたが、リセットしても問題は解決しませんでした。
  • 非表示のときに一時的に上と上を入れ替えることができましたが、それは醜い修正のようです。
4

1 に答える 1

1

私もこの問題を抱えており、別のスプライトのマウスアップイベントに応答して、1つのボタンを削除して別のボタンを追加しました.IEマウスはその時点でどちらのボタンの上にもありませんが、最初のボタン(問題のあるもの) は以前に削除されましたが、マウスは実際にその上にあったため、mouseOut イベントを受信せず、オーバー状態のままでした。可視性を使用してこれを回避することは私のニーズには問題ありませんが、代わりの答えは、表示リストに追加する前にボタンの新しいインスタンスに置き換えることです。

于 2011-10-18T21:49:50.230 に答える