如何在一个Grid类型的layout中,实现点击某个item,则让它在最上层显示。如图

显然列表中的中间那个节点被它后边的节点遮挡了,不是我想要的。问:如何实现?
我想的一种方法是改变选中节点的zIndex为列表中的最大值,然而这样会导致这个节点的位置改变(去列表最后了。。)
Layout组件是使用zIndex给子节点排序了,修改zIndex会导致你发现的节点位置变化。有3个方法供你参考:
- 修改zIndex前将Layout组件disable掉,适当时再enable回来
- 如果你这个列表是固定元素,非动态创建的子节点,使用Grid布局UI完成后将Layout组件移除
- 这个列表是一次性动态创建并布局的,可以在布局完成后将Layout组件给移除。
- 点击Layout中的子节点时弹出的菜单按钮,不要与头像节点编辑在一个prefab中,将他独立出来,将菜单节点addChild到上层节点。
多谢回答!
改下设计,点击了某个item,弹出一个总的层来显示
通过改需求能解决的问题都不是问题