Example #1
0
    LoopListViewItem OnGetItemByIndex(LoopListView listView, int index)
    {
        if (index < 0 || index >= HelpUIView.Instance.TotalItemCount)
        {
            return(null);
        }

        HelpInfoItem itemData = HelpUIView.Instance.GetItemDataByIndex(index);

        if (itemData == null)
        {
            return(null);
        }
        LoopListViewItem item       = listView.NewListViewItem("InfoItem");
        ListHelpItem     itemScript = item.GetComponent <ListHelpItem>();

        if (item.IsInitHandlerCalled == false)
        {
            item.IsInitHandlerCalled = true;
            itemScript.Init();
        }

        itemScript.SetItemData(itemData, index);
        return(item);
    }
Example #2
0
        void LateUpdate()
        {
            m_Looplistview.UpdateAllShownItemSnapData();

            //切换缩放效果
            int tmp_Count = m_Looplistview.ShownItemCount;

            for (int i = 0; i < tmp_Count; ++i)
            {
                LoopListViewItem tmp_Item       = m_Looplistview.GetShownItemByIndex(i);
                ListItem         tmp_Itemscript = tmp_Item.GetComponent <ListItem>();
                float            tmp_Scale      = 1 - Mathf.Abs(tmp_Item.DistanceWithViewPortSnapCenter) / 700f;
                tmp_Scale = Mathf.Clamp(tmp_Scale, 0.8f, 1);
                tmp_Itemscript.m_Contentrootobj.GetComponent <CanvasGroup>().alpha = tmp_Scale;
                tmp_Itemscript.m_Contentrootobj.transform.localScale = new Vector3(tmp_Scale, tmp_Scale, 1);
            }
        }
Example #3
0
        void OnItemUpdated(LoopListViewItem item)
        {
            if (secretsData.Count <= 0)
            {
                return;
            }
            SecretItemContainer itemScript    = item.GetComponent <SecretItemContainer>();
            SecretData          currentSecret = secretsData[item.ItemIndex];

            itemScript.UpdateData(currentSecret);
            itemScript.RefreshView();
            itemScript.StateText.gameObject.SetActive(false);
            if (hasSecretsData == null)
            {
                itemScript.StudyBtn.gameObject.SetActive(false);
                itemScript.ForgetBtn.gameObject.SetActive(false);
                if (currentSecret.Quality < QualityType.FlashRed)
                {
                    itemScript.MixBtn.gameObject.SetActive(true);
                    //闪红以下品质4张及4张以上相同类型相同品质的诀要就可以融合
                    List <SecretData> sameSecrets = secretsData.FindAll(sec => sec.Type == currentSecret.Type && sec.Quality == currentSecret.Quality);
                    itemScript.MixBtn.gameObject.SetActive(sameSecrets != null && sameSecrets.Count >= 2);
                }
                else
                {
                    itemScript.MixBtn.gameObject.SetActive(false);
                    itemScript.StateText.gameObject.SetActive(true);
                }
            }
            else
            {
                if (hasSecretsData.FindIndex(sec => sec.PrimaryKeyId == currentSecret.PrimaryKeyId) >= 0)
                {
                    itemScript.ForgetBtn.gameObject.SetActive(true);
                }
                else
                {
                    itemScript.StudyBtn.gameObject.SetActive(true);
                }
                itemScript.MixBtn.gameObject.SetActive(false);
            }
        }
Example #4
0
        /// <summary>
        /// 通过索引获取列表单元
        /// </summary>
        /// <param name="_listview"></param>
        /// <param name="_index"></param>
        /// <returns></returns>
        LoopListViewItem OnGetItemByIndex(LoopListView _listview, int _index)
        {
            //get a new item. Every item can use a different prefab, the parameter of the NewListViewItem is the prefab’name.
            //And all the prefabs should be listed in ItemPrefabList in LoopListView2 Inspector Setting
            LoopListViewItem tmp_Item       = _listview.NewListViewItem("Element");
            ListItem         tmp_itemscript = tmp_Item.GetComponent <ListItem>();

            if (tmp_Item.IsInitHandlerCalled == false)
            {
                tmp_Item.IsInitHandlerCalled = true;
                tmp_itemscript.Init();
            }

            _index = _index % DatasourceMgr.Instance.m_Totalitemcount;
            if (_index < 0)
            {
                _index = DatasourceMgr.Instance.m_Totalitemcount + _index;
            }

            PageItem tmp_Itemdata = DatasourceMgr.Instance.GetItemDataByIndex(_index);

            tmp_itemscript.SetItemData(tmp_Itemdata, _index);
            return(tmp_Item);
        }
Example #5
0
 public void OnLoopListViewFinished(LoopListView _listview, LoopListViewItem _item)
 {
     //LoopListViewItem tmp_Item0 = m_Looplistview.GetShownItemByIndex(0);
     //ListItem itemScript = tmp_Item0.GetComponent<ListItem>();
     m_Looplistview.RefreshAllShownItemWithFirstIndex(0);
 }