SentimentPanel.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using Fort23.Core;
  2. namespace Fort23.Mono
  3. {
  4. [UIBinding(prefab = "SentimentPanel" )]
  5. public partial class SentimentPanel : UIPanel
  6. {
  7. private void Init()
  8. {
  9. isAddStack = true;
  10. // IsShowAppBar = false;
  11. }
  12. public async override CTask GetFocus()
  13. {
  14. await AppBarPanel.OpenPanel(this);
  15. base.GetFocus();
  16. }
  17. protected override void AddEvent()
  18. {
  19. }
  20. protected override void DelEvent()
  21. {
  22. }
  23. public override void AddButtonEvent()
  24. {
  25. Btn_Close.onClick.AddListener(() =>
  26. {
  27. UIManager.Instance.HideUIUIPanel(this);
  28. });
  29. }
  30. public async override CTask<bool> AsyncInit(object[] uiData)
  31. {
  32. for (var i = 0; i < SentimentWidgetGams.Count; i++)
  33. {
  34. SentimentWidget sentimentWidget = await UIManager.Instance.CreateGComponentForObject<SentimentWidget>(SentimentWidgetGams[i], null);
  35. sentimentWidget.CustomInit(i+1);
  36. sentimentWidget.OnClick = OnClick;
  37. }
  38. return await base.AsyncInit(uiData);
  39. }
  40. private void OnClick(ItemWidgetBasic obj)
  41. {
  42. SentimentWidget sentimentWidget = obj as SentimentWidget;
  43. if(sentimentWidget.sentimentData == null)
  44. return;
  45. SentimentInfoPanel.OpenPanel(sentimentWidget.sentimentData);
  46. }
  47. public async static CTask OpenPanel()
  48. {
  49. await UIManager.Instance.LoadAndOpenPanel<SentimentPanel>(null);
  50. }
  51. }
  52. }