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

36 lines
926 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-04-07 13:56:27 +08:00
if (!string.IsNullOrEmpty(m_localizationID) && !"None".Equals(m_localizationID) && GameApp.Localization != null)
2025-02-07 16:15:34 +08:00
{
2025-04-02 20:53:53 +08:00
text = GameApp.Localization?.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
}
}