//实现TableViewDataSource接口 //初始化/刷新每个格子 public TableViewCell tableCellAtIndex(UIGridView table, TableViewCell cell, int idx) { BagItemTableViewCell itemCell = cell as BagItemTableViewCell; ItemInventory item = null; if (itemCell == null) { itemCell = new BagItemTableViewCell(); item = ItemInventory.Create(m_equipInfos[idx]); itemCell._ItemInventory = item; } else { item = itemCell._ItemInventory; item.Flush(m_equipInfos[idx]); } EventTriggerClick.Get(item.gameObject).onClick = (o) => { SelectItem(table, item, itemCell.Idx); }; if (m_selectIdx == -1 || (m_selectIdx >= 0 && m_selectIdx == idx)) { SelectItem(table, item, idx); } return(itemCell); }
public void tableViewWillClose(List <TableViewCell> cellList) { foreach (var cell in cellList) { BagItemTableViewCell itemCell = cell as BagItemTableViewCell; itemCell._ItemInventory.__Recycle(); } }
public void SelectItem(UIGridView table, ItemInventory selectItem, int Idx) { m_haveSelectItem = true; ItemInventory oldItem = null; if (m_selectIdx >= 0) { BagItemTableViewCell itemCell = table.cellAtIndex(m_selectIdx) as BagItemTableViewCell; if (itemCell != null) { oldItem = itemCell._ItemInventory; } } m_selectIdx = Idx; if (m_clickEquipItemCB != null) { m_clickEquipItemCB(oldItem, selectItem); } ; }