【问题标题】:how to use Zindex for different layers in kineticjs?如何在 kineticjs 中将 Zindex 用于不同的层?
【发布时间】:2013-02-06 09:33:53
【问题描述】:

嗯,我一直在尝试这个小应用程序,我使用两个不同的层来显示对象。一个用于背景(整个舞台),另一个用于显示在它上面的对象。所以当我在“单击”时更改背景时图层在绘制新图层之前清除,它被添加到舞台但与另一图层重叠。所以我需要在不影响另一图层的情况下更改背景。我们不能使用“setZIndex”图层或其他方式......!!

【问题讨论】:

    标签: html5-canvas kineticjs


    【解决方案1】:

    添加到舞台后可以使用setZIndex。

    你不能在没有属于阶段的情况下设置 zIndex。 原因是layer需要找到parent,也就是stage。

    因此,首先将图层添加到舞台,然后设置zIndex。

    http://jsfiddle.net/bighostkim/QTu8K/

    stage.add(layer1);
    stage.add(layer2);
    
    layer1.setZIndex(1);
    

    【讨论】:

      【解决方案2】:

      我正在尝试使用:

      stage.add(menuLayer);
      menuLayer.setZIndex(10);
      
      stage.add(backgroundLayer);
      

      在我画了backgroundLayer 之后,我在menuLayer 前面得到了backgroundLayer

      我的解决方法是在添加到舞台后设置backgroundLayer Z 索引:

      stage.add(menuLayer);
      menuLayer.setZIndex(10);
      
      stage.add(backgroundLayer);
      backgroundLayer.setZIndex(0);
      

      突然菜单正确地出现在背景前面!

      【讨论】:

        猜你喜欢
        • 2012-12-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-02-07
        • 2012-12-21
        • 2012-10-30
        相关资源
        最近更新 更多