网站推广方案怎么写的,h5商城网站建设是什么,上海网址一360导航,西安网站推广排名个人向笔记。 1 前言 记录一下自己的本地化实现思路#xff0c;暂时只讲本文的本地化实现。
2 文本本地化方案-个人 本地化实现是基于Luban的。自己使用Luban实现了一个“配置表模块”#xff0c;又实现了一个“全局配置模块”#xff0c;之后再基于这两个模块实现了“文本… 个人向笔记。 1 前言 记录一下自己的本地化实现思路暂时只讲本文的本地化实现。
2 文本本地化方案-个人 本地化实现是基于Luban的。自己使用Luban实现了一个“配置表模块”又实现了一个“全局配置模块”之后再基于这两个模块实现了“文本本地化模块”。 首先我会制作一个本地化文本的Excel表表中会记录个各种文本每条数据是一个文本数据包含Id、说明描述、文本内容分多字段简体中文、英文...。可以看到我是把所有语言都放到一个表中了会一起读入内存中也有将不同语言分开存放根据需要再读入内存这种暂时不讨论。 之后是模块初始化。系统首先会初始化“配置表模块”读取Excel配置表到内存并提供对外访问接口。之后系统初始化“全局配置模块”从配置表中获取默认全局配置并提供对外访问全局配置项的接口这里实际就是属性。然后初始化“文本本地化模块”会在主线程中设置语言环境Cultture Info并注册语言切换事件用于在切换语言时修改主线程的语言环境同时提供方法让外界提供文本ID方法返回本地化文本方法会根据全局配置中的当前语言提供对应文本。PS语言环境会影响一些系统数值比如通过DateTime获取的星期几就会分中英文。 然后时项目中的应用。主要思想就是在相关脚本中首先获取到各个Text对象然后提供一个方法用于根据Text Id通过“文本本地化模块”获取在Awake中调用此方法初始赋值并注册语言切换事件在切换语言时再次调用来赋值文本。但这个方法不太方便因为涉及到Text的脚本较多所以若以后有所代码修改就需要在各个脚本中去修改比较麻烦所以这里提供第二种方法。创建一个脚本此脚本会完成上面所讲的获取、注册事件、赋值文本的方法并提供一个Public字段用于提供Text Id然后将其挂在到具有Text组件的对象上即可这样这个Text组件内容就可以实现本地化效果了以后就算有代码修改也只需要在此脚本中修改即可非常方便而且本身也把文本本地化的实现进行了简化。
3 官方本地化插件 也可以参考官方本地化插件“Localization”直接在包管理器里搜索即可。
4 问题统计
4.1 语言长度问题 同样的话不同语言的文本长度时不一致的有些UI在切换语言后就会出现文本出框的问题对于此问题我暂时想到的解决方案大致如下分几步走
分层简化。比如有些文本在一个名为药水的分类窗口内那么内部药水的命名就可以进行简化由“XXX药水”→“XXX”。修改用词。有些语句直接翻译会很长那么我们可以看看有没有相关简写的词可用或是换个说法但不改变其意思。Text组件设置。我一般是会设置水平与垂直为Wrap、Truncate然后设置Best Fit属性来让文本自适应调整大小。单独处理。若前三步都没法解决直接针对处理调整。
我一般对所有本地化文本做1、2、3的操作若还有问题则进行4操作。
5 后记 暂时这些。