【WP开发】NGUI切换应用程序再切回应用字体全乱了

来源:互联网 发布:盛世势不可挡网络剧 编辑:程序博客网 时间:2024/05/19 10:35

今天测试出来的一个bug特别头疼,就是wp应用切换到别的应用再切换回来,会很大概率导致所有有UILabel的地方全部乱码或者干脆不显示。

使用NGUI版本是v3.0.2。unity3d版本4.6.4p2。手机lumia520。

如图:




用了很多办法,试过切换Localization.instance.currentLanguage再切换回来也一样,各种百度谷歌StackOverFlow也没找到答案。最后是这样解决的:

</pre><p><pre name="code" class="csharp">void OnApplicationPause(bool paused){if (!paused) {#if UNITY_WP8//修复页面跳转后字体乱码RefreshFont();#endif        }}

public static void RefreshFont(){UIFont[] fonts = Resources.FindObjectsOfTypeAll(typeof(UIFont)) as UIFont[];for (int i = 0, imax = fonts.Length; i < imax; ++i) {UIFont font = fonts[i];font.MarkAsDirty();}}

在应用失去焦点回来之后,刷新下UIFont字体集,问题得到解决。不过带来的缺点就是每次app得到焦点就刷新很浪费,目前只碰到WP平台有此问题,安卓和IOS都没有,所以加了个限定语句只在WP平台起作用。

0 0
原创粉丝点击