之前在网上的NGUI本地化教程是基于老版本的了,现在用的3.7版本已经改了很多,以前的本地化教程有点不适用了。

1.资源:

本地化的txt文本起名叫做Chinese.txt,到resource目录下新建一个Language目录,把txt文件放到Language下。注意:要把txt转码成UTF-8编码,不然unity里面会显示不出来。如果是其他语言可以直接放到unity中。我用Notepad++转码的。 =.=

2.代码:

在UIRoot下新建一个label。再新建一个脚本,绑定到UIroot或者其他的某个物体上,保证运行的时候可以执行这个脚本即可。

脚本内容比较简单,首先获取到Localization.language,再给label赋值即可。

一共三句:

void Awake()
{
Localization.language = "Language/Chinese";
UILabel label = GameObject.Find("Label").GetComponent<UILabel>();
label.text = Localization.Get("desc");
}

Localization.language会从本地的resource文件夹下搜索Chinese.txt文件,Localization.Get("desc")会获取到Chinese.txt文件里desc对应的字段值,NGUI的Localization脚本里面有说明,可以找到该脚本仔细看看。label上面也不用绑定UILocalize控件了。使用的字体要支持中文,不然也不能正常显示的。还有一点,最好把NGUI示例里面自带的Localization.txt删掉,不然显示总错乱的,可能是我的key和例子里的一样就发生了冲突,不过建议删了,反正用不上自带的这个txt。

点击运行,就可以正常显示我的txt里面对应key值的子段了。

 

按照这个思路做的话,项目里面就要把所有的文字都放到一个txt文件里了,然后游戏运行的时候加载到内存中,如果文件比较大应该会对内存有点影响。这个是在我电脑本地做的测试,不知道还有没有更好的方法来做本地化。希望知道的朋友告诉一声,多谢~~

最新文章

  1. glob模块
  2. JS的window.location应用实例
  3. hash 分区的用途是什么?
  4. 架设证书服务器 及 让IIS启用HTTPS服务(转)
  5. android 实现橡皮擦效果以及保存涂鸦的功能
  6. CXF(2.7.10) - RESTful Services, JSON Support
  7. poj_3468: A Simple Problem with Integers (树状数组区间更新)
  8. 关于IPFS的热门问题
  9. app后端设计(4)-- 通讯的安全性
  10. Spring中你可能不知道的事(一)
  11. key diff 在input上的踩坑
  12. 扒一扒: Java 中的枚举
  13. 为啥百度、网易、小米都用Python?Python的用途是什么?
  14. 【HttpWeb】Post和GET请求基本封装
  15. Vlc支持IE 360 低版本的Google浏览器
  16. 『转载』hadoop2.x常用端口、定义方法及默认端口
  17. C# System.Collections.Stack
  18. 打印信息,通过.jasper工具将集合输出到PDF文件 然后利用打印机打印文件
  19. 全屏API
  20. 文本比较算法Ⅱ——Needleman/Wunsch算法的C++实现【求最长公共子串(不需要连续)】

热门文章

  1. libev客户端
  2. 纯CSS实现文字一行居中,多行左对齐的方法
  3. es安装脚本
  4. C#/Sqlite-单机Window 程序 sqlite 数据库实现
  5. iOS 使用腾讯地图显示用户位置注意事项
  6. PortableApps的使用方法
  7. 有道单词导入 有道单词 生词本 批量导入 添加 有道单词XML 背单词
  8. HTML5 移动端如何使用css让百分比布局的弹窗水平和垂直方向上居中
  9. CSS之word-break : break-all
  10. java写的小脚本,用来受mDNS消息