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

5 篇文章 0 订阅

今天测试出来的一个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平台起作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鱼蛋-Felix

如果对你有用,可以请我喝杯可乐

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值