DivineSenceItemWidget.cs 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. using System;
  2. using Core.Language;
  3. using GameLogic.Bag;
  4. namespace Fort23.Mono
  5. {
  6. [UIBinding(prefab = "DivineSenceItemWidget")]
  7. public partial class DivineSenceItemWidget : ItemWidgetBasic
  8. {
  9. public ItemInfo ItemInfo;
  10. private Action cancelCallBack;
  11. private void Init()
  12. {
  13. }
  14. public override void AddEvent()
  15. {
  16. }
  17. public override void DelEvent()
  18. {
  19. }
  20. public override void AddButtonEvent()
  21. {
  22. Btn_Cancel.onClick.AddListener(() =>
  23. {
  24. cancelCallBack?.Invoke();
  25. });
  26. base.AddButtonEvent();
  27. }
  28. public async void CustomInit(ItemInfo itemInfo,Action cancelCallBack, ItemInfo selectItemInfo = null)
  29. {
  30. ItemInfo = itemInfo;
  31. this.cancelCallBack = cancelCallBack;
  32. WidgetItem widgetItem = await UIManager.Instance.CreateGComponentForObject<WidgetItem>(WidgetItemGam, null);
  33. widgetItem.InitWidget(itemInfo,false);
  34. // Icon_ItemIcon.icon_name = itemInfo.config.icon;
  35. // Text_ItemCount.text = itemInfo.count.ToString();
  36. Text_ItemDesc.text = LanguageManager.Instance.Text(itemInfo.config.itemDesc);
  37. Text_IItemName.text = LanguageManager.Instance.Text(itemInfo.config.itemName);
  38. if (itemInfo == selectItemInfo)
  39. {
  40. Btn_Cancel.gameObject.SetActive(true);
  41. }
  42. else
  43. {
  44. Btn_Cancel.gameObject.SetActive(false);
  45. }
  46. }
  47. }
  48. }