示例#1
0
 protected void DisPosePageItem(List <GDragablePageItem> items, int index)
 {
     if (items.Count > index)
     {
         GDragablePageItem item = items[index];
         if (item != null)
         {
             if (_Pool.PutIn(item))
             {
                 GNewUITools.SetVisible(item.RectTrans, false);
             }
         }
         items.RemoveAt(index);
     }
 }
示例#2
0
    protected void UpdatePageItem(List <GDragablePageItem> items, int index)
    {
        GDragablePageItem item = null;

        if (items.Count > index)
        {
            item = items[index];
        }
        else
        {
            item = CreateItem();
            items.Add(item);
        }
        item.SetPosition(CalculatePos(index, item.RectTrans));
        item.OnInitPageItem(index, true);
    }
示例#3
0
    protected GDragablePageItem CreateItem()
    {
        GDragablePageItem page_item = null;

        page_item = _Pool.TakeOut();

        if (page_item == null)
        {
            RectTransform item = CUnityUtil.Instantiate(_CellItem) as RectTransform;
            item.SetParent(Trans, false);
            Vector2 new_pos = GNewUITools.GetAlignedPivot(NewAlign.Left);
            if (IsVertical)
            {
                new_pos = GNewUITools.GetAlignedPivot(NewAlign.Top);
            }
            item.pivot     = new_pos;
            item.anchorMax = new_pos;
            item.anchorMin = new_pos;

            GDragablePageItem item_com = item.GetComponent <GDragablePageItem>();
            if (item_com == null)
            {
                item_com = item.gameObject.AddComponent <GDragablePageItem>();
            }

            if (this._PageItemInitCallBack != null)
            {
                item_com.OnItemInit = OnInitPageItem;
            }

            if (this._ClickPageItemCallBack != null)
            {
                item_com.OnItemClick = OnClickPageItem;
            }

            if (_HasChildButton && this._ClickPageItemButtonCallBack != null)
            {
                item_com.OnItemClickButton = this.OnClickPageItemButton;
            }

            page_item = item_com;
        }

        GNewUITools.SetVisible(page_item.RectTrans, true);

        return(page_item);
    }