Exemple #1
0
    public void SetRowNumber(int row, int cellNum, int dispNum)
    {
        cellItemNum        = cellNum;
        cellIndex          = row;
        cellDisplayItemNum = dispNum;
        // if(dicItems==null){
        //  dicItems = new Dictionary<int, MoreAppCellItem>();

        // }
        if (dicItems.Count == 0)
        {
            return;
        }

        // m_rowNumberText.text = "Row " + rowNumber.ToString();
        // m_background.color = GetColorForRow(rowNumber);
        for (int i = 0; i < dicItems.Count; i++)
        {
            MoreAppCellItem item = dicItems[i];
            // item.itemDelegate = this;
            item.SetItemIndex(cellIndex * cellItemNum + i);
            if (i < cellDisplayItemNum)
            {
                item.Hide(false);
            }
            else
            {
                item.Hide(true);
            }
        }
    }
Exemple #2
0
 public void AddItem(int idx, MoreAppCellItem item)
 {
     if (dicItems == null)
     {
         // Debug.Log("MoreAppCell AddItem null");
         //dicItems = new Dictionary<int, MoreAppCellItem>();
     }
     dicItems[idx] = item;
 }
Exemple #3
0
 public void UpdateItem(List <ItemInfo> list)
 {
     for (int i = 0; i < cellDisplayItemNum; i++)
     {
         MoreAppCellItem item = dicItems[i];
         int             idx  = cellIndex * cellItemNum + i;
         if (idx < list.Count)
         {
             ItemInfo info = list[idx];
             item.UpdateInfo(info);
         }
     }
 }
Exemple #4
0
 public void SetItem(MoreAppCellItem item)
 {
 }
    //Will be called by the TableView when a cell needs to be created for display
    public TableViewCell GetCellForRowInTableView(TableView tableView, int row)
    {
        MoreAppCell cell = tableView.GetReusableCell(cellPrefab.reuseIdentifier) as MoreAppCell;

        if (cell == null)
        {
            cell      = (MoreAppCell)GameObject.Instantiate(cellPrefab);
            cell.name = "GuankaItemCellInstance_" + (++numInstancesCreated).ToString();
            Rect    rccell      = (cellPrefab.transform as RectTransform).rect;
            Rect    rctable     = (tableView.transform as RectTransform).rect;
            Vector2 sizeCell    = (cellPrefab.transform as RectTransform).sizeDelta;
            Vector2 sizeTable   = (tableView.transform as RectTransform).sizeDelta;
            Vector2 sizeCellNew = sizeCell;
            sizeCellNew.x = rctable.width;
            //(cell.transform as RectTransform).sizeDelta = sizeCellNew;
            cell.SetCellSize(sizeCellNew);

            //Debug.LogFormat("TableView Cell Add Item:rcell:{0}, sizeCell:{1},rctable:{2},sizeTable:{3}", rccell, sizeCell, rctable, sizeTable);
            //oneCellNum = (int)(rctable.width / rccell.height);
            //int i =0;

            for (int i = 0; i < oneCellNum; i++)
            {
                // GameObject obj = (GameObject)Resources.Load("Prefab/MoreApp/MoreAppCellItem");
                // MoreAppCellItem item = obj.GetComponent<MoreAppCellItem>();
                MoreAppCellItem item = cellItemPrefab;

                item = (MoreAppCellItem)GameObject.Instantiate(item);
                Rect rcItem = (item.transform as RectTransform).rect;

                item.transform.SetParent(cell.transform, false);
                item.index = row * oneCellNum + i;
                // LayoutElement layoutElement = item.GetComponent<LayoutElement>();
                // if (layoutElement == null) {
                //     layoutElement = item.gameObject.AddComponent<LayoutElement>();
                // }
                // layoutElement.preferredWidth =160;// GetHeightForRowInTableView(tableView,row);
                //  item.transform.SetSiblingIndex(1);


                RectTransform rectTransform = item.GetComponent <RectTransform>();
                //RectTransform rectTransform = item.transform as RectTransform;
                // Vector2 size = rectTransform.sizeDelta * scaleUI;
                Vector3 pos = new Vector3(rcItem.width * i, 0, 0);

                // rectTransform.position = pos;
                rectTransform.anchoredPosition = pos;
                cell.AddItem(i, item);


                Vector2 sizeItem = (item.transform as RectTransform).sizeDelta;
                //Debug.LogFormat("TableView Item:rcItem:{0}, sizeItem:{1},rectTransform.position:{2}", rcItem, sizeItem, rectTransform.position);
                rcItem.x = 0;
                rcItem.y = 0;
                // (item.transform as RectTransform).rect = rcItem;
            }
        }

        int cellNumCur = oneCellNum;

        if (row == GetNumberOfRowsForTableView(tableView) - 1)
        {
            cellNumCur = listAppMore.Count - (GetNumberOfRowsForTableView(tableView) - 1) * oneCellNum;
        }

        cell.SetRowNumber(row, oneCellNum, cellNumCur);
        cell.UpdateItem(listAppMore);
        return(cell);
    }