using System;
|
using UnityEngine;
|
using UnityEngine.UI;
|
using EnhancedUI.EnhancedScroller;
|
using System.Collections.Generic;
|
|
namespace vnxbqy.UI
|
{
|
|
public class FashionDecomposeLineBeh : ScrollerUI
|
{
|
[SerializeField] List<DecomposeItemBeh> itemBehs = new List<DecomposeItemBeh>();
|
|
public override void Refresh(CellView cell)
|
{
|
var decomposeModel = FashionDecomposeModel.Instance;
|
var decomposeGuids = decomposeModel.decomposeItemGuids;
|
int length = itemBehs.Count;
|
for(int i = 0; i < length; i++)
|
{
|
var itemBeh = itemBehs[i];
|
int index = cell.index*length + i;
|
if(decomposeGuids != null
|
&& index < decomposeGuids.Count)
|
{
|
var guid = decomposeGuids[index];
|
FashionDecomposeModel.DecomposeItem decomposeItem = null;
|
decomposeModel.TryGetDecomposeItem(guid,out decomposeItem);
|
itemBeh.SetDisplay(decomposeItem.itemModel,decomposeItem.isSelect);
|
}
|
else
|
{
|
itemBeh.SetDisplay(null);
|
}
|
|
}
|
}
|
|
[Serializable]
|
public class DecomposeItemBeh
|
{
|
[SerializeField] CommonItemBaisc itemBaisc;
|
[SerializeField] GameObject selectObj;
|
|
public void SetDisplay(ItemModel itemModel,bool _isSelect = false)
|
{
|
if (itemModel == null)
|
{
|
itemBaisc.SetActive(false);
|
selectObj.SetActive(false);
|
}
|
else
|
{
|
itemBaisc.SetActive(true);
|
selectObj.SetActive(_isSelect);
|
var decomposeModel = FashionDecomposeModel.Instance;
|
itemBaisc.Init(itemModel);
|
itemBaisc.button.RemoveAllListeners();
|
itemBaisc.button.AddListener(()=>
|
{
|
decomposeModel.UpdateDecomposeItem(itemModel.guid, !selectObj.activeInHierarchy);
|
selectObj.SetActive(!selectObj.activeInHierarchy);
|
});
|
}
|
}
|
}
|
}
|
}
|