123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- using System;
- using System.Collections.Generic;
- using ET;
- using FairyGUI;
- using UI.Bag;
- using UI.CommonGame;
- using UnityEngine;
- namespace GFGGame
- {
- public class GiftBoxSelectorView : BaseWindow
- {
- private UI_GiftBoxSelectorUI _ui;
- private int _itemId;
- private int _count;
- public override void Dispose()
- {
- base.Dispose();
- if (_ui != null)
- {
- _ui.Dispose();
- _ui = null;
- }
- }
- protected override void OnInit()
- {
- base.OnInit();
- packageName = UI_GiftBoxSelectorUI.PACKAGE_NAME;
- _ui = UI_GiftBoxSelectorUI.Create();
- this.viewCom = _ui.target;
- this.viewCom.Center();
- this.modal = true;
- _ui.m_btnCancel.onClick.Add(OnBtnCancelClick);
- _ui.m_list.SetVirtual();
- _ui.m_list.itemRenderer = ListItemRender;
- _ui.m_list.onClickItem.Add(OnListSelectorItemClick);
- }
- protected override void AddEventListener()
- {
- base.AddEventListener();
- }
- protected override void OnShown()
- {
- base.OnShown();
- _itemId = (int)this.viewData;
- _count = (int)ItemDataManager.GetItemNum(_itemId);
- UpdateView();
- UpdateList();
- }
- protected override void OnHide()
- {
- if (_ui.m_list.numItems > 0)
- {
- _ui.m_list.ScrollToView(0);
- }
- _ui.m_list.numItems = 0;
- base.OnHide();
- }
- protected override void RemoveEventListener()
- {
- base.RemoveEventListener();
- }
- private void UpdateView()
- {
- ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_itemId);
- _ui.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg);
- _ui.m_txtName.text = itemCfg.name;
- _ui.m_txtTotalNum.text = $"已拥有:{_count}";
- _ui.m_txtItemDes.text = string.IsNullOrEmpty(itemCfg.desc) ? "暂无描述" : itemCfg.desc;
- }
- private void UpdateList()
- {
- _ui.m_list.numItems = _count;
- }
- private void ListItemRender(int index, GObject obj)
- {
- ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_itemId);
- UI_ListSelectorItem uiItemChild = UI_ListSelectorItem.Proxy(obj);
- int[] itemChildArr = itemCfg.itemsArr[index];
- ItemCfg itemCfgChild = ItemCfgArray.Instance.GetCfg(itemChildArr[0]);
- uiItemChild.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfgChild);
- uiItemChild.m_comItemNumBag.m_txtNum.text = itemChildArr[1].ToString();
- uiItemChild.target.data = itemCfgChild;
- }
- private void OnListSelectorItemClick(EventContext context)
- {
- GComponent comItem = (context.data as GComponent);
- ItemCfg itemCfg = comItem.data as ItemCfg;
- //弹出物品详细描述框
- }
- private void OnBtnCancelClick()
- {
- this.Hide();
- }
- }
- }
|