码迷,mamicode.com
首页 > 其他好文 > 详细

NGUI UIGrid(或UITable)回收利用Item预设体 [未解决]

时间:2014-09-04 00:06:27      阅读:853      评论:0      收藏:0      [点我收藏+]

标签:des   blog   使用   strong   for   数据   sp   log   on   

在我们的项目中,有挺多界面都需要垂直拖拽滚动面板,而面板上面有几十到上百个Item,这个时候肯定Item的动态添加肯定是用预设体来实现!

在编码的时候,尝试写个对预设体Item的回收再用list,但是却行不通(现在暂时是用网上大部分blog所提到的用Destroy(GameObject)来实现动态删除),我的想法是这样的:

1.使用Transform UIGrid.RemoveChild(int index)移除UIGird下的子控件,同时函数会返回被删除控件的Transform,这个时候重置数据再用list保存起来;

2.需要添加Item的时候就向list拿,若list为空就load预设体Item。

但实际上,调用UIGrid.RemoveChild(int index)函数之后,下断点调试检测UIGird的子控件数量(UIGird.transform.childCount)竟然没有变化!因为时间紧急,也没仔细查看RemoveChild函数里面的源码,不过,单单是上述所提到“UIGird的数量没有变化”这一点就让循环利用创建出来的预设体这一想法打了水漂~~希望是我还没完全了解NGUI UIGird组件,不然就太悲催了,每次需要添加Item就得Load预设体,然后删除就是直接调用Destroy函数!

 

等过阵子再抽时间仔细看看,先备忘一下。

NGUI UIGrid(或UITable)回收利用Item预设体 [未解决]

标签:des   blog   使用   strong   for   数据   sp   log   on   

原文地址:http://www.cnblogs.com/dove11kiss/p/3955005.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!