node的层级在启动之后设置后,在监听事件中又被重新初始化,是什么原因

assets.zip (1.4 MB)

2个问题:
1.node的层级SiblingIndex在start()中设置后,在监听事件中又被重新初始化
2.向右滑动层级显示有bug

  • Creator 版本: 3.4 or 3.41

  • 目标平台: edge

  • 重现方式:1.运行demo,对比 初始化.info 和 左右滑动的.info
    2.向右滑动第3次,card1的siblingIndex是4=>3,card7的siblingIndex是2=>1,但是card7却会显示在card1的上面。总之,同样的写法,向左没有任何问题,向右就有问题

  • 首个报错: 无报错信息。

  • 重现概率: 100% 我试了所有设备和浏览器。都会出现

1赞

谢谢反馈,我们会跟进看看。按理说 start 是在队列中初始化的,初始化过程中的层级调整不会影响到预生成的队列才对。

感谢反馈,这个问题是我们概念存在理解偏差导致的,您这里使用的 zIndex 其实是 SiblingIndex,即子节点在父节点下的位置,而这个值是会随着子节点在父节点下节点树的变化而改变的,那么我来解释下两个问题:
1、info 的变化中打印的的 thisNode.getSiblingIndex,这个值在滑动变化后,节点树是会变化的,那么这个值获取出是当前的 子节点在父节点下的位置,所以会不同。
2、这个 bug 是由于在配置表中,zIndex 是 1-5 的值,且存在重复值,那么在使用 zIndex 赋值时,将重复的值赋给 SiblingIndex,则会造成节点树无法按照您的设计排列,造成渲染问题,我将配置改为 0-7 的值后,效果工作正常。

关于 zIndex,我们在之后的设计中会考虑提供,来避免使用时需要频繁理解节点树结构。

1赞

谢谢,还是我理解的有点问题,

该主题在最后一个回复创建后14天后自动关闭。不再允许新的回复。