public ListItemUi AddItem(object item, string text, Action onButton, ListItemUi prefab = null) { if (prefab == null) { prefab = prefab_item; } GameObject newItem = Instantiate(prefab.gameObject); newItem.SetActive(true); ListItemUi li = newItem.GetComponent <ListItemUi>(); li.name = text; li.Text = text; li.item = item; if (li.button != null && onButton != null) { li.button.onClick.AddListener(onButton.Invoke); //li.button.enabled = true; //Image img = li.GetComponentInChildren<Image>(); //if (img != null) { img.enabled = true; } } newItem.transform.SetParent(transform, false); Refresh(); return(li); }
void Awake() { if (prefab_item == null) { prefab_item = GetComponentInChildren <ListItemUi>(); } if (prefab_item.transform.parent == transform) { prefab_item.gameObject.SetActive(false); } SetItems(null, itemNames, null); }
public int IndexOf(object item) { Transform t = transform; for (int i = 0; i < t.childCount; ++i) { Transform child = t.GetChild(i); ListItemUi liui = child.GetComponent <ListItemUi>(); if (child != prefab_item.transform && (item == null || liui.item == item || (liui.item == null && child.name == item as string))) { return(i); } } return(-1); }