Пример #1
0
    public void UpdateDataByIntValue(string attr, int value, LuaTable data)
    {
        if (this.m_Datas == null)
        {
            return;
        }
        int length = this.m_Datas.Count;
        int i      = 0;

        for (i = 0; i < length; i++)
        {
            LuaTable tp = this.m_Datas[i] as LuaTable;
            int      v;
            tp.Get <string, int>(attr, out v);
            if (v == value)
            {
                this.m_Datas[i] = data;
                break;
            }
        }
        for (int j = 0; j < m_InstantiateItems.Count; j++)
        {
            UILoopItem item = m_InstantiateItems[j].GetComponent <UILoopItem>();
            if (item.itemIndex == i)
            {
                item.Data(data);
            }
        }
    }
Пример #2
0
 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();
             }
                 );
         }
     }
 }
Пример #3
0
 public void refreshWithoutPosChange()
 {
     for (int i = 0; i < m_InstantiateItems.Count; i++)
     {
         UILoopItem item = m_InstantiateItems[i].GetComponent <UILoopItem>();
         item.Data(item.GetData());
     }
 }
Пример #4
0
    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]);
        }
    }