Пример #1
0
    protected virtual int Remove(BaseListViewItem item)
    {
        if (this.isClickableItem)
        {
            this.RemoveCallbacks();
        }

        var index = items.FindIndex(x => x == item);

        if (selectedIndex == index)
        {
            Deselect(index);
            selectedIndex = -1;
        }
        else if (selectedIndex > index)
        {
            selectedIndex -= 1;
        }

        items.Remove(item);
        Free(item);

        if (this.isClickableItem)
        {
            AddCallbacks();
        }
        return(index);
    }
Пример #2
0
 protected virtual BaseListViewItem Add(BaseListViewItem item)
 {
     if (this.isClickableItem)
     {
         this.AddCallback(item, items.Count);
     }
     items.Add(item);
     return(item);
 }
Пример #3
0
 private void Free(BaseListViewItem item)
 {
     if (item == null)
     {
         return;
     }
     if (item.gameObject == null)
     {
         return;
     }
     Destroy(item.gameObject);
 }
Пример #4
0
    private void AddCallback(BaseListViewItem item, int index)
    {
        callbackClick.Add(go => Toggle(index));

        item.listener.onClick += callbackClick[index];
    }