2016-06-23 3 views
0

私はちょっとした試合をしています。だから私はメインタイムラインに4つのレイヤーが必要です。最下層にはムービークリップがあり、そこにはいくつかのボタンがあります。上の2つのレイヤーには、エフェクトとアクションのムービークリップもあり、上のレイヤーは、アクションスクリプトのレイヤーです。レイヤーのシーケンスは意図されています。アクションスクリプト3:ボタンは常に上に表示されますか?

私はそれをテストするとき、私はそれらの上にムービークリップがあるので、任意のボタンをクリックすることはできません。 actionscriptでは、すべてのボタンが常に上にある可能性はありますか?

答えて

0

あなたはまた、新しいDisplayObjectが/のDisplayObjectContainerがあなたのいずれかのボタンの上に追加されるたびにはaddChildするための呼び出しを作ることができることを保証するために非常に高い屈折率を設定し

あなたのボタンは、このようなベクターに格納されている場合:

var buttons:Vector.<SimpleButton> = new Vector.<SimpleButton>(); 

、あなたはsetButtonsOnTop

のような機能をしました

何かがボタンの上に追加されたときに関数を呼び出します。このようにそう

function removeButtons():void{ 
    for(var i:uint=0;i<buttons.length;i++){ 
     removeChild(buttons[i]); 
    } 
} 

setButtonsOnTop(); 

だからボタンが

「removeButtons」メソッドを追加することで、あなたがこれを行うことがあり、ボタンを削除するには...他のDisplayObjectの上に常にありますインデックス値を気にする必要はありません。

+0

このケースでは、addChild(myButton)のリコールだけでAMO ... – tatactic

+0

event.ADDEDがトリガーされたときにsetButtonsOnTop()メソッドを呼び出すこともできます。 – tatactic

+0

素晴らしいサウンドです。ありがとう、tatactic、私はこれで動作しようとします。 – 3iskalt

2

parent.setChildIndex(childObject、i)を設定すると、z-indexを変更できます。 ...その常にオントップ

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/all-index-Z.html

+0

ありがとうございました! z-indexを変更しようとします。 – 3iskalt

+1

しかし、注意してください!タイムライン(setChildIndex/AddChild/AddChildAt)から始まるオブジェクトの親子関係を操作すると、そのオブジェクトはタイムラインの影響を受けなくなります。親のタイムラインが削除されるか、 'removeChild'で明示的に削除されるまで、画面に残ります。キーフレームで削除されません。 – BadFeelingAboutThis

+0

なぜZ-インデックスを変更したいのですか? addChildメソッドを再利用することで、インデックスを気にする必要はありませんか? numChildrenプロパティをテストすることさえありません。 – tatactic

関連する問題