AlicizaX/Client/Packages/com.alicizax.unity.ui.extension/Runtime/UGUIExtension/Text/UXTextMeshPro.cs

36 lines
926 B
C#
Raw Normal View History

2025-02-06 17:59:35 +08:00
using System;
using TMPro;
namespace UnityEngine.UI
{
public class UXTextMeshPro : TextMeshProUGUI
{
[SerializeField] private string m_localizationID = "";
2025-04-28 19:45:45 +08:00
2025-02-06 17:59:35 +08:00
protected override void Start()
{
base.Start();
if (!Application.isPlaying) return;
ChangeLanguage();
}
protected void ChangeLanguage()
{
2025-04-28 19:45:45 +08:00
if (!string.IsNullOrEmpty(m_localizationID) && !"None".Equals(m_localizationID) && GameApp.Localization != null)
2025-02-06 17:59:35 +08:00
{
2025-04-28 19:45:45 +08:00
text = GameApp.Localization?.GetString(m_localizationID);
2025-02-06 17:59:35 +08:00
}
}
2025-07-11 21:00:00 +08:00
/// <summary>
/// 重新动态设置多语言
/// </summary>
/// <param name="localizationID"></param>
public void SetLocalization(string localizationID)
{
m_localizationID = localizationID;
ChangeLanguage();
}
2025-02-06 17:59:35 +08:00
}
}