使用CreateJS进行Z-Index定位

Cod*_*ree 5 html5 canvas easeljs createjs

我正在尝试为我的行Graphic()设置z-index.我试图将线设置为始终落后于其他两个形状. 两个形状和一条线.

据我所知,添加的第一个元素是z = 0,第二个元素是z = 1,依此类推.是这样吗?z = 0是最高位置还是底部?

我正在尝试使用stage.setChildIndex(element,z-level)更改自己的z位置,是吗?

谢谢.

ols*_*lsn 4

1)索引越低,“后面”的项目就越多,所以:0 = bottom 还请记住,setChildIndex如果您尝试类似的操作,将会失败:container.setChildIndex(child,500)如果您只有4个孩子,那么您要设置孩子的索引to 不得超出范围。这意味着如果你想对它们进行排序,你应该从最低的索引(通常是 0)开始。

2)或者你也可以给你的对象一个属性,例如:child.zIndex = 500;并编写你自己的排序方法,然后使用sortChildren容器的 - 方法,例如:

function sortByZ(a,b) {
    if (a.zIndex < b.zIndex) return -1;
    if (a.zIndex > b.zIndex) return 1;
    return 0;
}

myContainer.sortChildren(sortByZ);

// or a shorter version:
function sortByZ(a,b) {
    return a.zIndex - b.zIndex;
}
Run Code Online (Sandbox Code Playgroud)

这样你就不必担心设置 zIndex,这是越界的。