public void ShowEquip(List <EquipData> equipDataList, EquipItemCallback2 callback = null) { //1.如果当前图标数小于传进来的数据那么就添加 //2.如果大于就失活 if (equipDataList == null) { return; } Debug.Log("更新"); for (int i = 0; i < equipDataList.Count; i++) { GameObject item = null; if (i < equipItemContent.childCount) { item = equipItemContent.GetChild(i).gameObject; } else { //实例化到场景中 item = PoolManager.Instance.GetObj("Prafebs/UI/equipItem"); //设置父对象 item.transform.SetParent(equipItemContent); (item.transform as RectTransform).localScale = Vector3.one; } EquipItemController si = item.GetComponent <EquipItemController>(); //初始化图标 LocalEquipData localEquip = EquipDataModel.Instance.MyEquipData2Local(equipDataList[i]); si.Init(equipDataList[i], callback); } int num = equipItemContent.childCount; for (int i = equipDataList.Count; i < num; i++) { PoolManager.Instance.PushObj(equipItemContent.GetChild(equipDataList.Count).gameObject); } }
public void UpdateEquip(Image equipImage, out bool hasEquip, out bool hasUpEquip, EquipData equip, EquipItemCallback2 callback = null) { GameObject item = null; if (equipImage.transform.childCount < 2) { //实例化到场景中 item = PoolManager.Instance.GetObj("Prafebs/UI/equipItem"); //设置父对象 item.transform.SetParent(equipImage.transform); item.transform.localScale = Vector3.one; item.transform.localPosition = Vector3.zero; } else { item = equipImage.transform.GetChild(1).gameObject; } EquipItemController si = item.GetComponent <EquipItemController>(); si.Init(equip, callback); hasEquip = true; hasUpEquip = true; }