MainHeroPanel.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. using System.Collections.Generic;
  2. using Fort23.Core;
  3. namespace Fort23.Mono
  4. {
  5. [UIBinding(prefab = "MainHeroPanel")]
  6. public partial class MainHeroPanel : UIPanel
  7. {
  8. List<BtnFaBaoWidget> btnFaBaoWidgets = new List<BtnFaBaoWidget>();
  9. private void Init()
  10. {
  11. }
  12. protected override void AddEvent()
  13. {
  14. }
  15. protected override void DelEvent()
  16. {
  17. }
  18. public override void AddButtonEvent()
  19. {
  20. Btn_Close.onClick.AddListener(() => { UIManager.Instance.HideUIUIPanel(this); });
  21. }
  22. public async void CustomInit()
  23. {
  24. for (int i = 0; i < 4; i++)
  25. {
  26. BtnFaBaoWidget btnFaBaoWidget =
  27. await UIManager.Instance.CreateGComponent<BtnFaBaoWidget>(null, FaBaoRoot);
  28. btnFaBaoWidget.CustomInit(i);
  29. btnFaBaoWidget.onClick = OnClick;
  30. btnFaBaoWidgets.Add(btnFaBaoWidget);
  31. }
  32. }
  33. private async void OnClick(ItemWidgetBasic obj)
  34. {
  35. BtnFaBaoWidget btnFaBaoWidget = obj as BtnFaBaoWidget;
  36. SelectFaBaoPanel selectFaBaoPanel = await SelectFaBaoPanel.OpenPanel(btnFaBaoWidget.index);
  37. await selectFaBaoPanel.UIClosed();
  38. foreach (var b in btnFaBaoWidgets)
  39. {
  40. b.CustomInit(b.index);
  41. }
  42. }
  43. public async static CTask<MainHeroPanel> OpenPanel()
  44. {
  45. MainHeroPanel mainHeroPanel = await UIManager.Instance.LoadAndOpenPanel<MainHeroPanel>(null);
  46. mainHeroPanel.CustomInit();
  47. return mainHeroPanel;
  48. }
  49. public override void Close()
  50. {
  51. foreach (var btnFaBaoWidget in btnFaBaoWidgets)
  52. {
  53. UIManager.Instance.DormancyGComponent(btnFaBaoWidget);
  54. }
  55. btnFaBaoWidgets.Clear();
  56. base.Close();
  57. }
  58. }
  59. }