NGUI ScrollView动态添加和删除对象。
来源:互联网 发布:java启动exe程序 编辑:程序博客网 时间:2024/06/07 07:25
动态添加,基本思想是:
1、先把要添加的元素在编辑器中编辑好,制作成一个prefab。
2、在代码中,动态的生成一个新的对象加入到Grid对象的子对象中。这里利用到了Resources对象,这个对象的用法可以参照官网,就是在Assets目录下有一个Resources目录,位置随便,只要是在Assets目录下就行。
3、加入对象之后,可以从这些对象中获取子对象进行属性的修改,比如添加了十个武器,那么十个武器的Icon,名字和价格都不一样。
下面代码代码中:
代码如下:
var GameObject ngui_grid = GameObject.Find ("UIGrid");
UIGrid ngui_ui_grid = ngui_grid.GetComponent<UIGrid>();
GameObject _gridItem = NGUITools.AddChild(ngui_grid, (GameObject)(Resources.Load("GridItemPrefab")));
// 生成的对象重新命名
_gridItem.name = "gridItem" + indexSlot;
var item = itemManage.Items[itemslot.Index];
// 动态改变每一个武器对象的显示属性。
Transform[] allChildren = _gridItem.GetComponentsInChildren<Transform>();
foreach (Transform child in allChildren)
{
if(child.gameObject.tag == "GridItemIcon")
{
UISprite _ItemIcon = child.gameObject.GetComponent<UISprite>();
_ItemIcon.spriteName = item.Icon.name;
}
else if(child.gameObject.tag == "GridItemName")
{
UILabel _ItemName = child.gameObject.GetComponent<UILabel>();
_ItemName.text = item.Name+" "+itemslot.Index;
}
else if(child.gameObject.tag == "GridItemPrice")
{
UILabel _ItemPrice = child.gameObject.GetComponent<UILabel>();
_ItemPrice.text = item.Price+"$";
}
else
{
// do nothing,,,
}
}
// 加入这个标志,可以让元素添加之后,Grid对元素进行重新排列,
ngui_ui_grid.repositionNow = true;
return;
元素删除,代码如下:
for(int k = 0;k<ngui_grid.transform.childCount;k++)
{
GameObject go = ngui_grid.transform.GetChild(k).gameObject;
Destroy(go);
// 这个标记会让元素立即重新排列。
ngui_ui_grid.Reposition();
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
- NGUI ScrollView动态添加和删除对象。
- NGUI ScrollView动态添加和删除对象。
- 用NGUI动态添加和删除Sprite
- Unity NGUI中动态添加和删除sprite(附上转载者注释)
- 动态添加/删除一个对象
- javascript动态添加、修改、删除对象的属性和方法
- javascript动态添加、修改、删除对象的属性和方法
- javascript动态添加、修改、删除对象的属性和方法
- javascript动态添加、修改、删除对象的属性和方法
- javascript动态添加、修改、删除对象的属性和方法
- NGUI动态添加
- NGUI 动态添加(改)
- NGUI动态添加widget
- NGUI 动态添加(改)
- NGUI动态添加
- NGUI动态添加 .
- NGUI动态添加UILabel
- select动态添加和删除
- poj 1837 Balance -DP
- cin、cin.get()、cin.getline()、getline()、gets()函数的用法
- 动态限制EdiText只能输入特定字符
- Android权限
- Spring -- 注解配置Bean
- NGUI ScrollView动态添加和删除对象。
- NYOJ 5 Binary String Matching(数据结构)
- 关于Android中物理按键不响应的可能的一个问题。
- jQuery设置disabled属性与移除disabled属性
- H265 Intro - General Concepts
- java程序一年里一个月有多少天
- 使用hadoop distcp从ftp拷贝文件到hdfs
- 手机GPU详细解读
- 欢迎使用CSDN-markdown编辑器