[]DialogManager默认是添加到Laya.stage上会导致非引擎的显示对象无法永远处于最上层!

如题。断点看了下引擎代码,尝试解决这个问题发现如下问题:
1.dialog对象父容器是dialogManager,引擎层会自动在dialog对象show的时候判断是否存在dialogManager对象,如果没有则实例化一个dialogManager并添加到舞台上,此时如果dialogManager在显示列表中的层级为最上层,从而就会遮挡自己永远停留在最上层的显示对象,这是不希望看到的!
2.在程序开始的时候,实例化一个dialogManager并赋值给Dialog.manager静态变量(Laya.Dialog.manager = new Laya.DialogManager();),事先把dialogManager添加到显示舞台,然后再把自己的最上层对象放入显示列表,这系列操作是没问题的。但是当dialog对象show的时候dialogManager又会跑到舞台的最上层遮挡住自己最上层的对象!
比如,一个代替鼠标的自定义图片,需要实时处于舞台的最上面!
已邀请:

cuixueying

赞同来自:

1、dialog本身就是位于最上层的,譬如你浏览器上alert了一个弹框,你只有将弹框关闭,才可以进行其他操作,dialog也是弹框,也是位于所有显示对象最上层的,你是有什么需求需要其他显示对象跑到dialog的上方吗
2、在手机端是没有鼠标事件一说的,所以你说的问题也不会设计到,至于pc端,确实dialog会遮挡这个图标,明天我确认下,再告诉你!

要回复问题请先

商务合作
商务合作