ActivityGetYuanXiaoSuccessView.cs 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. using System.Collections;
  2. using UnityEngine;
  3. using UI.ActivityGetYuanXiao;
  4. using System.Collections.Generic;
  5. using FairyGUI;
  6. namespace GFGGame
  7. {
  8. public class ActivityGetYuanXiaoSuccessView : BaseWindow
  9. {
  10. private UI_ActivityGetYuanXiaoSuccessUI _ui;
  11. private PickUpGame _cfg;
  12. private List<ItemData> itemDatas;
  13. private Dictionary<string, EffectUI> _effectUIDic = new Dictionary<string, EffectUI>();
  14. protected override void OnInit()
  15. {
  16. base.OnInit();
  17. packageName = UI_ActivityGetYuanXiaoSuccessUI.PACKAGE_NAME;
  18. _ui = UI_ActivityGetYuanXiaoSuccessUI.Create();
  19. viewCom = _ui.target;
  20. viewCom.Center();
  21. viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
  22. modal = true;
  23. clickBlankToClose = false;
  24. _ui.m_listReward.itemRenderer = RenderListRewardItem;
  25. _ui.m_btnExit.onClick.Add(OnClickBtnExit);
  26. _effectUIDic.Add("YXJ_Quad_star", EffectUIPool.CreateEffectUI(_ui.m_starEffect, "ui_Activity", "YXJ_Quad_star"));
  27. _effectUIDic.Add("YXJ_QuadText_win", EffectUIPool.CreateEffectUI(_ui.m_titleEffect, "ui_Activity", "YXJ_QuadText_win"));
  28. }
  29. public override void Dispose()
  30. {
  31. // Clear Effect
  32. foreach (var v in _effectUIDic)
  33. {
  34. EffectUIPool.Recycle(v.Value);
  35. }
  36. _effectUIDic.Clear();
  37. if (_ui != null)
  38. {
  39. _ui.Dispose();
  40. _ui = null;
  41. }
  42. base.Dispose();
  43. }
  44. protected override void OnShown()
  45. {
  46. base.OnShown();
  47. _cfg = (PickUpGame)viewData;
  48. _ui.m_btnRetry.visible = (_cfg.isAgain != 0);
  49. itemDatas = ItemUtil.CreateItemDataList(_cfg.bonusWinArr);
  50. _ui.m_listReward.numItems = itemDatas.Count;
  51. }
  52. private void RenderListRewardItem(int index, GObject obj)
  53. {
  54. if (index >= itemDatas.Count)
  55. {
  56. return;
  57. }
  58. ItemData reward = itemDatas[index];
  59. if (obj.data == null)
  60. {
  61. obj.data = new ItemView(obj as GComponent);
  62. }
  63. (obj.data as ItemView).SetData(reward);
  64. }
  65. private void OnClickBtnExit()
  66. {
  67. Hide();
  68. ViewManager.Hide<ActivityGetYuanXiaoView>();
  69. }
  70. }
  71. }