FM/Assets/Scripts/Runtime/UI/Item/UpMenuItem.cs

94 lines
2.8 KiB
C#
Raw Normal View History

2025-06-17 09:31:12 +08:00
using System;
2025-07-02 10:24:01 +08:00
using Runtime;
2025-06-04 22:49:37 +08:00
using UnityEngine.UI;
using TMPro;
using UnityEngine;
namespace HK
{
public class UpMenuItem : UIItemBase
{
2025-06-17 09:31:12 +08:00
[SerializeField] private Button btnHome;
[SerializeField] private Button btnReturn;
[SerializeField] private Button btnShoppingCart;
2025-07-02 10:24:01 +08:00
[SerializeField] private TMP_Text txtShoppingCartCount;
2025-06-17 09:31:12 +08:00
[SerializeField] private TMP_Dropdown droChooseLanguage;
public Action OnClickHome;
public Action OnClickReturn;
public Action OnClickShoppingCart;
2025-06-04 22:49:37 +08:00
public override void OnInit()
{
base.OnInit();
2025-06-17 09:31:12 +08:00
2025-06-04 22:49:37 +08:00
#region AutoGen_Init
2025-06-17 09:31:12 +08:00
btnHome = GetValue<Button>("btnHome");
btnReturn = GetValue<Button>("btnReturn");
btnShoppingCart = GetValue<Button>("btnShoppingCart");
2025-07-02 10:24:01 +08:00
txtShoppingCartCount = GetValue<TMP_Text>("txtShoppingCartCount");
2025-06-17 09:31:12 +08:00
droChooseLanguage = GetValue<TMP_Dropdown>("droChooseLanguage");
btnHome.onClick.AddListener(OnClickbtnHome);
btnReturn.onClick.AddListener(OnClickbtnReturn);
btnShoppingCart.onClick.AddListener(OnClickbtnShoppingCart);
droChooseLanguage.onValueChanged.AddListener(OnValueChangeddroChooseLanguage);
2025-06-04 22:49:37 +08:00
#endregion
}
2025-07-02 10:24:01 +08:00
public override void OnShow()
{
base.OnShow();
droChooseLanguage.value = (int)LanguageManager.Instance.type;
txtShoppingCartCount.text = ShoppingCartManager.Instance.ShoppingCart.totalQuantity;
2025-07-02 10:24:01 +08:00
}
2025-06-04 22:49:37 +08:00
#region AutoGen_Method
2025-06-17 09:31:12 +08:00
private void OnClickbtnHome()
{
OnClickHome?.Invoke();
2025-07-02 10:24:01 +08:00
UIManager.Instance.CloseAll();
UIManager.Instance.ShowUIOnly(nameof(HomeUI));
2025-06-17 09:31:12 +08:00
}
private void OnClickbtnReturn()
{
OnClickReturn?.Invoke();
}
private void OnClickbtnShoppingCart()
{
OnClickShoppingCart?.Invoke();
2025-07-02 10:24:01 +08:00
UIManager.Instance.ShowUIOnly(nameof(ShoppingCartUI));
2025-06-17 09:31:12 +08:00
}
private void OnValueChangeddroChooseLanguage(int i)
{
LanguageManager.Instance.ChangeLanguageType((LanguageManager.LanguageType)i);
}
2025-06-04 22:49:37 +08:00
#endregion
public override void OnDispose()
{
base.OnDispose();
2025-06-17 09:31:12 +08:00
2025-06-04 22:49:37 +08:00
#region AutoGen_Dispose
2025-06-17 09:31:12 +08:00
btnHome.onClick.RemoveListener(OnClickbtnHome);
btnReturn.onClick.RemoveListener(OnClickbtnReturn);
btnShoppingCart.onClick.RemoveListener(OnClickbtnShoppingCart);
droChooseLanguage.onValueChanged.RemoveListener(OnValueChangeddroChooseLanguage);
btnHome = null;
btnReturn = null;
btnShoppingCart = null;
droChooseLanguage = null;
2025-06-04 22:49:37 +08:00
#endregion
}
}
}