一个用于小型 Unity 项目的多语言轻量级工具
将多语言 JSON
生成 C#
静态代码,利用 R.Strings.id
进行绑定获取,GetText
无 IO
、无反射,使用方便,运行效率极高。但是由于生成静态代码,不适合文本量很大的项目。
-
将符合
SystemLanguage
枚举名称的JSON
文件置入Assets/MultiLangLite/Editor/I18n
文件夹,JSON
文件命名规则如SystemLanguage.English -> English.json
。English.json
为默认语言,不可缺少。JSON
格式参照 文件格式 -
使用
Unity
编辑器菜单Tools/MultiLanguage/Debug
或Tools/MultiLanguage/Release
生成R.cs
文件 -
获取
I18n
文本方法:
I18n.GetText(R.Strings.Lime); // 方式一
I18n.Instance[R.Strings.Name]; // 方式二
// 附加参数方式
I18n.GetText(R.Strings.Note, "This is a note");
详见: I18n
对外部资源包文本、联网获取文本多语言尚未实现