0

我正在尝试为舞台上的所有对象应用蒙版,除了一对。有很多不同的对象,将来它们的数量会发生变化,所以我希望能够动态地完成遮罩。

我写了这段代码:

var i;

for (i = 0; i < this.numChildren; i++) {
    if (this.getChildAt(i).name!="stage_kelp_bg" && this.getChildAt(i).name!="magnifier_mask") {
        this.getChildAt(i).mask = this.magnifier_mask;
    }
}

上面的代码在文档类的构造方法中。简单地说一下:

this.stage_kelp.mask = this.magnifier_mask;

完美无瑕,但仅适用于那个对象。知道有什么问题吗?

没有错误被抛出,对象只是没有被掩盖。

4

3 回答 3

1

进一步的研究表明,我不能将 1 个蒙版应用于多个对象。我必须为每个对象设置一个遮罩,或者将所有对象放入一个容器中并遮盖该容器。

显然,您可以使用一个图层来掩盖时间轴上的多个对象,但是如果不将所有对象添加到一个容器中,就无法以编程方式进行。不幸的是,如果不重新编码整个应用程序,我就无法做到这一点,所以我将使用时间线来掩盖事情。

于 2012-05-01T02:36:35.693 回答
1

我建议您最好将所有影片剪辑移动到单个影片剪辑中进行屏蔽。如果在您的情况下可行,这将更容易。

于 2012-05-01T04:48:12.120 回答
0

怎么样for each

for (var mc:movieClicp in this){
                  mc.mask=mask_}
于 2012-05-01T02:12:51.400 回答