NGUI发布后UI层看不见的解决办法

NGUI发布后UI层看不见的解决办法

提示信息:You can'tplace widgets on a layer different than the UIPanel that manages them.

If youwant to move widgets to a different layer, parent them to a new panel instead. 双击进去,是NGUI的一个提示

是因为在UiPanel或者Canvas父目录下,程序运行的时候克隆出新游戏物体,但是程序又没有指定和Panel渲染层(Layer)或者Canvas,相一致的Layer值造成的。

并且,在编辑器中程序运行时Ui界面可以显示,但是发布以后,所有的UI全部不显示了。

解决办法:

在你的程序中凡是要往Panel或者Canvas父物体下克隆新游戏物体,也就是往Ui界面层克隆的新物体

 

请在克隆后,用代码AA.Layer=1;类似代码强制设置Layer和其父物体以及Panel或者Canvaslayer保持一致;

GameObject go=Instantiate(goPrefab,new Vector3(0,1,1),transform.Rotation);

go.layer=5;

新克隆出来的物体,应该和父物体layer层一致,在UI中;以保证发布后界面会正常显示

快捷途径:在克隆之前,直接把预制体的layer层和父物体的layer层保持一致;

 

 

 
 
我们什么都没有,唯一的本钱就是青春。梦想让我与众不同,奋斗让我改变命运!
原文地址:https://www.cnblogs.com/mengmengxia/p/6821221.html