MyLocalization Decument
  • v1.3
    • MyLocalization English Document
      • MyLocalization Data Flow Diagram
      • Quick Start
        • Run the Demo Correctly
        • Preparation
        • Localize Text
        • Localize Texture
        • Localization of Other Types of Resources
      • Load Assets
        • Only Load Resources Corresponding to the Current Language
        • Implement IResLoader interface
        • Enable IResLoader Subclass
        • Convert Resource References Associations to Paths
        • Text Localization Items Do Not Need to Be Loaded with Language Type
      • Edit Text for Localization
        • Basic Operation
        • Automatic Translation
        • Find and Replace
        • Speech Binding Text
        • CSV Table Export and Import
        • Essay on the Importance of Text Table (StringTable)
      • Display and Setter Components
        • Correspondence between Setter Components and Display Components
        • RTL (Right To Left) Related Settings
        • Dynamic Splicing of Localized Text
        • Quickly create and modify localized field text using properties of MyString
    • MyLocalization 中文文档
      • MyLocalization 数据流程图
      • 快速开始
        • 正确运行 Demo
        • 准备工作
        • 文本本地化
        • 图片本地化
        • 其他资源的本地化
      • 加载当前语言资源
        • 只加载当前语言对应的资源
        • 实现 IResLoader 接口
        • 启用 IResLoader 子类
        • 将资源引用关联转为路径
        • 文本的本地化项不能随语言类型加载
      • 编辑文本表
        • 基本操作
        • 自动翻译
        • 搜索与替换
        • 语音绑定文字
        • CSV表格导出与导入
        • 使用 MyString 的属性快速创建和修改本地化字段文本
      • 一切准备都为了Setter组件实现本地化
        • Setter 组件与显示组件的对应关系
        • RTL (Right To Left)相关设置
        • 动态拼接本地化文本
Powered by GitBook
On this page
  1. v1.3
  2. MyLocalization 中文文档
  3. 加载当前语言资源

启用 IResLoader 子类

MyLocalization 需要在Unity Editor 模式下和游戏运行模式下都需要加载资源,或转换资源路径, 所以需要在两个时机点给 MyLocalization 赋值 IResLoader 子类:

  1. C# 代码编译后需要立刻赋值

  2. 游戏刚启动后需要立刻赋值

C# 代码编译后, 会调用添加 UnityEditor.Callbacks.DidReloadScripts 标签的方法. 如 ResourceLoader 中的AutoAssign 方法:

#if UNITY_EDITOR && Using_ResourceLoader
        [UnityEditor.Callbacks.DidReloadScripts(200)]
        public static void AutoAssign() {
            LocalizationSetting.loader = new ResourceLoader();
        }
#endif

参照此代码在用户实现 IResLoader 接口的子非静态类中添加类似代码即可.

游戏刚启动后, 在某一个立刻会执行的 MonoBehaviour类的Awake 方法中给 LocalizationSetting.loader = new XXXLoader(); 赋值即可. (可参考 Demo 中的 ReLoaderSetter.cs 类写法和使用方式也行)

(必要时调整一下代码运行顺序, 将赋值的类的运行顺序调得更加靠前.)

Previous实现 IResLoader 接口Next将资源引用关联转为路径

Last updated 2 years ago