0

我想知道在 Flash 中更改对象分层的最佳方法是什么?我的项目主要由小的单个电影剪辑组成。我想更好地将我的对象组织成层,以便一组影片剪辑可以在给定时间显示在另一组上方而不会发生任何冲突。任何有关执行此操作的最佳方法的建议都会很棒。

编辑:出现以下错误:

import flash.display.MovieClip;
import flash.display.Sprite;
import flash.display.DisplayObject;
import flash.events.Event;
import flash.events.MouseEvent;

var backgroundLayer:Sprite = new Sprite;
backgroundLayer.name = "backgroundLayer";

var gameLayer:Sprite = new Sprite;
gameLayer.name = "gameLayer";

var menuLayer:Sprite = new Sprite;
menuLayer.name = "menuLayer";

public function Main()
{
    addChild(backgroundLayer);
    addChild(gameLayer);
    addChild(menuLayer);

错误是:

1120: Access of undefined property backgroundLayer.
1120: Access of undefined property gameLayer.
1120: Access of undefined property menuLayer.

谢谢。

4

1 回答 1

0

可能最简单的方法是创建DisplayObjectContainers 或其子类的层次结构。( Sprite, MovieClip, 等等) 一旦这些以正确的顺序添加到阶段,这些容器的任何子容器都将在容器的层“内”。

要在代码中的这些层之间移动对象,您只需oldLayer.removeChild(thing); newLayer.addChild(thing);.

这是否是执行此操作的“最佳”方式取决于您在做什么,但这是我过去完成游戏对象分层的一种方式。

于 2013-05-05T15:28:52.860 回答