private void updateItem(int index, GameObject item) { item.SetActive(index < m_Datas.Count); if (item.activeSelf) { UILoopItem lit = item.GetComponent <UILoopItem>(); lit.UpdateItem(index, item); lit.Data(m_Datas[index]); if (selectedObject == m_Datas[index]) { lit.SetSelected(true); } else { lit.SetSelected(false); } if (lit.GetComponent <Button>() != null && addClickEventList.IndexOf(lit.GetComponent <Button>()) < 0) { addClickEventList.Add(lit.GetComponent <Button>()); lit.GetComponent <Button>().onClick.AddListener( delegate(){ if (selectedItem != null && selectedItem != item.GetComponent <UILoopItem>()) { selectedItem.SetSelected(false); } selectedItem = item.GetComponent <UILoopItem>(); selectedObject = selectedItem.GetData(); selectedItem.SetSelected(true); selectedItem.OnSelectedEventHandler(); } ); } } }
public void refreshWithoutPosChange() { for (int i = 0; i < m_InstantiateItems.Count; i++) { UILoopItem item = m_InstantiateItems[i].GetComponent <UILoopItem>(); item.Data(item.GetData()); } }
private void OnSelectedEventHandler(UILoopItem item) { Debug.LogError("选择的单元数据为:" + item.GetData().ToString()); }
private void updateItem(int index, GameObject item) { item.SetActive(index < m_Datas.Count); if(item.activeSelf) { UILoopItem lit = item.GetComponent<UILoopItem>(); lit.UpdateItem(index, item); lit.Data(m_Datas[index]); if (selectedObject == m_Datas[index]) { lit.SetSelected(true); } else { lit.SetSelected(false); } if (lit.GetComponent<Button>() != null && onSelectedEvent != null && addClickEventList.IndexOf(lit.GetComponent<Button>()) < 0) { addClickEventList.Add(lit.GetComponent<Button>()); lit.GetComponent<Button>().onClick.AddListener(delegate() { if (onSelectedEvent != null) { if (selectedItem != null && selectedItem != item.GetComponent<UILoopItem>()) { selectedItem.SetSelected(false); } selectedItem = item.GetComponent<UILoopItem>(); selectedObject = selectedItem.GetData(); selectedItem.SetSelected(true); onSelectedEvent(selectedItem); } }); } } }