DailyTaskView.cs 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. using System.Collections.Generic;
  2. using FairyGUI;
  3. using UI.DailyTask;
  4. using UnityEngine;
  5. namespace GFGGame
  6. {
  7. public class DailyTaskView : BaseWindow
  8. {
  9. private UI_DailyTaskUI _ui;
  10. private ValueBarController _valueBarController;
  11. private List<DailyTaskCfg> _cfgs;
  12. private List<DailyActiveRewardCfg> _rewardCfgs;
  13. public override void Dispose()
  14. {
  15. base.Dispose();
  16. _valueBarController.Dispose();
  17. _valueBarController = null;
  18. }
  19. protected override void OnInit()
  20. {
  21. base.OnInit();
  22. packageName = UI_DailyTaskUI.PACKAGE_NAME;
  23. _ui = UI_DailyTaskUI.Create();
  24. this.viewCom = _ui.target;
  25. isfullScreen = true;
  26. _valueBarController = new ValueBarController(_ui.m_comValueBar);
  27. _ui.m_list.itemRenderer = ListItemRender;
  28. _ui.m_listReward.itemRenderer = ListRewardItemRender;
  29. }
  30. protected override void OnShown()
  31. {
  32. base.OnShown();
  33. _valueBarController.OnShown();
  34. _cfgs = DailyTaskDataManager.Instance.GetDailyTaskCfgs();
  35. _rewardCfgs = new List<DailyActiveRewardCfg>(DailyActiveRewardCfgArray.Instance.dataArray);
  36. _ui.m_list.numItems = _cfgs.Count;
  37. _ui.m_listReward.numItems = _rewardCfgs.Count;
  38. }
  39. protected override void OnHide()
  40. {
  41. base.OnHide();
  42. }
  43. private void ListItemRender(int index, GObject obj)
  44. {
  45. UI_ListItem item = UI_ListItem.Proxy(obj);
  46. item.m_c1.selectedIndex = DailyTaskDataManager.Instance.GetTaskStateById(_cfgs[index].id);
  47. item.m_c2.selectedIndex = _cfgs[index].jumpId == "" ? 0 : 1;
  48. if (item.m_btnGet.data == null)
  49. {
  50. item.m_btnGet.onClick.Add(OnBtnGetClick);
  51. }
  52. item.m_btnGet.data = _cfgs[index].id;
  53. if (item.m_btnGo.data == null && _cfgs[index].jumpId != "")
  54. {
  55. item.m_btnGo.onClick.Add(OnBtnGoClick);
  56. }
  57. item.m_btnGo.data = _cfgs[index].jumpId;
  58. UI_ListItem.ClearProxy();
  59. }
  60. private void OnBtnGetClick(EventContext context)
  61. {
  62. GObject btnGet = context.sender as GObject;
  63. }
  64. private void OnBtnGoClick(EventContext context)
  65. {
  66. this.Hide();
  67. GObject btnGo = context.sender as GObject;
  68. ViewManager.Show(string.Format("GFGGame.{0}", btnGo.data), null, new object[] { typeof(DailyTaskView).Name, this.viewData });
  69. }
  70. private void ListRewardItemRender(int index, GObject obj)
  71. {
  72. UI_ListRewardItem item = UI_ListRewardItem.Proxy(obj);
  73. if (item.target.data == null)
  74. {
  75. item.target.onClick.Add(OnRewardItemClick);
  76. }
  77. item.target.data = _rewardCfgs[index];
  78. UI_ListRewardItem.ClearProxy();
  79. }
  80. private void OnRewardItemClick(EventContext context)
  81. {
  82. GObject item = context.sender as GObject;
  83. // UI_ListRewardItem item = UI_ListRewardItem.Proxy(context.data as GObject);
  84. ViewManager.Show<DailyTaskRewardView>(item.data);
  85. }
  86. }
  87. }