簡單的說,解決方法就是批量修改NGUI的label字體,修復ios就刪除arial引起的中文亂碼
我們來看具體如何操作
static public void yaheifont() { uf = AssetDatabase.LoadAssetAtPath("Assets/yahei.prefab",typeof( UIFont)) as UIFont; UnityEngine.Object[] objs = Selection.GetFiltered (typeof(UnityEngine.Object), SelectionMode.DeepAssets); foreach (UnityEngine.Object _obj in objs) { string path = AssetDatabase.GetAssetPath(_obj); Debug.Log("objname:"+_obj.name); UnityEngine.Object[] arr = AssetDatabase.LoadAllAssetsAtPath(path); Debug.Log("PATH:"+path); foreach (Object j in arr) { if(j.GetType()==typeof(UILabel)) { (j as UILabel).bitmapFont = uf; Debug.Log("dfdfd:" + j.name + ",tyep:" + j.GetType()); } } EditorUtility.SetDirty(_obj); } AssetDatabase.SaveAssets(); }