码迷,mamicode.com
首页 > 编程语言 > 详细

unity3d uGUI多语言

时间:2015-04-16 17:04:01      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:

从Foundation插件中抽离出的多语言。原理很简单,给Text绑定key,在程序开始时设置本地语言即可。

目录结构:

技术分享

LanguageEditor.cs:自定义编辑器;

LanguageService.cs:负责读取语言文件供程序使用;

LanguageText.cs:绑定到Text组件中;

Resources文件夹:存放资源文件及配置文件;

Localization文件夹:语言包,所有的语言放在该目录下,每种语言一个文件夹;根据语言设置读取相应目录下的语言文件;

LocalizationConfig:多语言配置文件,包含所有的语言名字。

SimpleJSON.cs:多语言的本地文件是json格式,解析json用;

由于项目中无动态设置语言需求,也就没做在程序运行时更改语言功能。在程序启动后先设置语言,绑定了LanguageText.cs的Text自动会根据设置的key显示对应的语言字符。

技术分享

使用demo:

 1 using UnityEngine;
 2 using UnityEngine.UI;
 3 using System.Collections;
 4 using Language;
 5 
 6 public class Test : MonoBehaviour {
 7 
 8     // Use this for initialization
 9 
10     void Awake () {
11         LanguageService.Instance.Language = new LanguageInfo ("English");
12     }
13 
14     void Start()
15     {
16         GameObject textPrefab = (GameObject)Resources.Load ("Text");
17         GameObject textObj = (GameObject)Instantiate (textPrefab);
18         textObj.transform.SetParent (this.transform);
19         textObj.transform.localPosition = Vector3.zero;
20     }        
21 }

Demo下载地址:

链接: http://pan.baidu.com/s/1dD70xah 密码: rw4r

unity3d uGUI多语言

标签:

原文地址:http://www.cnblogs.com/YYRise/p/4417665.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!