com.alicizax.unity.ui.exten.../Runtime/UXComponent/Text/UXTextMeshPro.cs

36 lines
945 B
C#
Raw Normal View History

2025-02-07 16:15:34 +08:00
using System;
using TMPro;
namespace UnityEngine.UI
{
public class UXTextMeshPro : TextMeshProUGUI
{
[SerializeField] private string m_localizationID = "";
2025-04-07 13:56:27 +08:00
2025-02-07 16:15:34 +08:00
protected override void Start()
{
base.Start();
if (!Application.isPlaying) return;
ChangeLanguage();
}
protected void ChangeLanguage()
{
2025-07-29 11:19:07 +08:00
if (!string.IsNullOrEmpty(m_localizationID) && !"None".Equals(m_localizationID) && UXLocalizationComponent.Helper != null)
2025-02-07 16:15:34 +08:00
{
2025-07-29 11:19:07 +08:00
text = UXLocalizationComponent.Helper.GetString(m_localizationID);
2025-02-07 16:15:34 +08:00
}
}
2025-05-15 15:34:12 +08:00
/// <summary>
/// 重新动态设置多语言
/// </summary>
/// <param name="localizationID"></param>
public void SetLocalization(string localizationID)
{
m_localizationID = localizationID;
ChangeLanguage();
}
2025-02-07 16:15:34 +08:00
}
}