概述
mHeroInfoUI.Herorder.Clear(); List<HeroInfo> heroList = new List<HeroInfo>(); //heroList = HeroDataManager.Instance.GetHeroListBySort(selectHero, classify, toggle); heroList = HeroDataManager.Instance.GetNewHeroSort(classify, toggle);
if (itemPool.Count != 0) for (int i = 0; i < itemPool.Count; i++) itemPool[i].SetActive(false); if ( heroList == null || heroList.Count <= 0) //meiyou { if(itemPool.Count!=0) for(int i=0;i<itemPool.Count;i++) itemPool[i].SetActive(false); return; } int r = heroList.Count/ 5; //行 int h = heroList.Count % 5;//余數 if (h != 0 && r != 0) r = r + 1; if(r==0) { r=1; } for (int i = 0; i < r; i++) { if (i > itemPool.Count-1) { itemPool.Add(GameObject.Instantiate(prefab) as GameObject); } Transform row = itemPool[i].transform; row.parent = heroItemParent.transform; row.localPosition = new Vector3(0, 220-i * (192), 0); row.localScale = Vector3.one; row.localEulerAngles = Vector3.zero; row.gameObject.SetActive(true);//prefab池 的一个元素激活 for(int j=0;j<5;j++) { if (h != 0&&i==r-1) //最后一行 { if (j > h - 1) { row.GetChild(j).gameObject.SetActive(false); //一个行prefab 里面5个元素有多余的 隐藏 continue; } } // heroList[i * 5 + j] 是第几个heroinfo InitAHeroItems(row.GetChild(j).gameObject, heroList[i * 5 + j], i * 5 + j); mHeroInfoUI.Herorder.Add(i * 5 + j, heroList[i * 5 + j].heroID); } } if (r < itemPool.Count - 1) //初始化完成后 隐藏池中多余的 { for (int b = r + 1; b < itemPool.Count; b++) { itemPool[b].SetActive(false); } }
精简后的
mHeroInfoUI.Herorder.Clear(); List<HeroInfo> heroList = new List<HeroInfo>(); //heroList = HeroDataManager.Instance.GetHeroListBySort(selectHero, classify, toggle); heroList = HeroDataManager.Instance.GetNewHeroSort(classify, toggle); #region newLogic CreateGridTools<HeroInfo> createGridTools = new CreateGridTools<HeroInfo>(); createGridTools.InitData(heroItemParent, Item, heroList, InitAHeroItems);
转载于:https://www.cnblogs.com/bambomtan/p/5498011.html
最后
以上就是悦耳招牌为你收集整理的什么是臭代码的全部内容,希望文章能够帮你解决什么是臭代码所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复