Unity3d发布IOS9应用时出现中文乱码的解决方法

时间:2022-08-24 12:42:38

简单的说,解决方法就是批量修改NGUI的label字体,修复ios就删除arial引起的中文乱码

我们来看具体如何操作

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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();
  }