using UnityEngine; using System.Collections; using System.Collections.Generic; using UnityEngine.UI; public class LanStr { public string Id; public string Page; public LanStr(string id, string page) { Id = id; Page = page; } public override string ToString() { return Language.GetStr(Id, Page); } } public class ManaText : Regist { #region 变量 public static Dictionary TextDic; #endregion public override void RegistValueA() { TextDic = new Dictionary(); } public static void Add(Text text, params object[] objs) { if (TextDic.ContainsKey(text)) { TextDic[text] = objs; text.text = LanguageText(objs); } else { TextDic.Add(text, objs); text.text = LanguageText(objs); } } public static void UpdateLanguage() { foreach (var kv in TextDic) { kv.Key.text = LanguageText(kv.Value); } } private static string LanguageText(object[] objs) { string str = ""; for (int i = 0; i < objs.Length; i++) { LanStr lanStr = objs[i] as LanStr; if (lanStr == null) { str += objs[i]; } else { str += lanStr.ToString(); } } return str; } }