You can't place widgets on a layer different than the UIPanel that manages them.

向原创致敬http://blog.csdn.net/chenggong2dm/article/details/39341823

运行NGUI做的背包的时候,报警告:

"You can‘t place widgets on a layer different than the UIPanel that manages them."
"If you want to move widgets to a different layer, parent them to a new panel instead."

点开代码看了一下NGUI的源码,是这样写的:

[csharp] view plaincopy

  1. public void CheckLayer ()
  2. {
  3. if (panel != null && panel.gameObject.layer != gameObject.layer)
  4. {
  5. Debug.LogWarning("You can‘t place widgets on a layer different than the UIPanel that manages them.\n" +
  6. "If you want to move widgets to a different layer, parent them to a new panel instead.", this);
  7. gameObject.layer = panel.gameObject.layer;
  8. }
  9. }

看了一下很简单,就是检查一下层号是否相同,如果不同,报个警告,并强制同层。

解决办法

1,如果背包里的物品都是预制,那么保证预制的层(Layer),与背包一致。

2,也可以在代码里用 the_gameobj.layer = n ; (n为int)  来动态的保持层一致性。

You can't place widgets on a layer different than the UIPanel that manages them.

时间: 2024-10-12 22:38:50

You can't place widgets on a layer different than the UIPanel that manages them.的相关文章

Lock-less buffer management scheme for telecommunication network applications

A buffer management mechanism in a multi-core processor for use on a modem in a telecommunications network is described herein. The buffer management mechanism includes a buffer module that provides buffer management services for one or more Layer 2

Cryptographic method and system

The present invention relates to the field of security of electronic data and/or communications. In one form, the invention relates to data security and/or privacy in a distributed and/or decentralised network environment. In another form, the invent

Orchard官方文档翻译(十) 管理Widgets

原文地址:http://docs.orchardproject.net/Documentation/Managing-widgets 想要查看文档目录请用力点击这里 最近想要学习了解orchard,但却没有找到相关的中文文档,只有英文文档.于是决定自行翻译,以便日后方便翻阅. 转载请注明原作者与出处. 本人英文水平有限,错误之处欢迎指出以便修正 管理部件(widgets) 在Orchard中,widget以UI片段(HTML)或代码段(内容的一部分)的形式存在,并且可以很容易的映射至任何位置或区

自定义Layer的两种方法

view的完整显示过程: 1.view.layer会准备一个Layer Graphics Context(图层类型上下文) 2.调用view.layer.delegate(即view)的drawLayer:inContext:并传入准备好的上下文 3.view的drawLayer:inContext:方法内部会调用view的drawRect:方法 4.view就可以在drawRect:方法中实现绘图,所有东西都会绘制到view.layer上 5.系统再将view.layer内容拷贝到屏幕上,完成

Orchard 之:Widget,兼看 Layer 在权限控制中的作用

一:Widget 可以理解为控件,可以直接被页面所引用.行为类似与分部页面,比如,我们可以创建一个 商品列表 Widget,然后这个 Widget 就可以被很多页面所引用. 理解 Widget 这个概念,我们不得不理解另外两个概念: 1:Layer Orchard 默认有这么几个层,Default.Authenticated.Anonymous.Disabled.TheHomepage.Layer 用于承载什么时候 Widget 将会被展现,这么讲大家一定觉得很抽象,其实 Layer 存在的意义

layer.js子窗口关闭并传数据到父窗的方法

昨晚整了很晚,一直找不到方法.去官网api看了好久,又在网上搜了很久 始终找不到答案.今天自己终于找到了方法. 难点:因为 确认和取消按钮都是在父窗 调用js生成的按钮.只能从父窗回调的时候去去数据并关闭子窗口.并不是子窗口自己关闭并把数据传到父窗.而网上给出的很多答案都是子窗口自己关闭并传数据到父窗的方法. [贴出我自己的代码,大概实现了流程.具体自己根据情况修改] 我的代码功能是 子窗口要传递数组给父窗,具体复杂的数据格式(如json等)类似 1.子窗口代码 var urls; functi

layer实现在前台删除前确认弹出框,并回调后台删除事件

最近遇到一些问题,用layer提示消息框,比如删除时,提示消息确定后 return false时,则不管用了,因为layer不支持阻塞,下面就解决一下这个问题: 删除按钮代码: <asp:Button ID="btnDel" name="btnDel" runat="server" Text="删除" class="btn btn-gray" OnClientClick="return re

【Caffe代码解析】Layer网络层

Layer 功能: 是全部的网络层的基类,当中.定义了一些通用的接口,比方前馈.反馈.reshape,setup等. #ifndef CAFFE_LAYER_H_ #define CAFFE_LAYER_H_ #include <algorithm> #include <string> #include <vector> #include "caffe/blob.hpp" #include "caffe/common.hpp" #

IT小鲜肉 Widgets Tree 单选、多选、相关回调函数、获取选中的节点功能

写一个树控件并没有想象中的那么容易,今天又花了我一个1个多小时,主要为IT小鲜肉 Widgets Tree控件添加了 单选.多选.选择前和选择后两个回调函数.获取选中节点的功能.后面会继续努力完善这个树控件. 1.通过设置初始化时候的选项{select:true}开启单选,通过设置初始化时候的选项{select:{type:'multiple'}}开启多选 使用实例代码如下: 运行效果如下: 2.添加了onBeforeSelect回调函数,用来实现自定义选择,如果该函数返回false会中断默认的