当前位置: 首页 > news >正文

论坛网站html模板wordpress手机适应

论坛网站html模板,wordpress手机适应,网站群的建设,网站首页模板推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址 大家好#xff0c;我是佛系工程师☆恬静的小魔龙☆#xff0c;不定时更新Unity开发技巧#xff0c;觉得有用记得一键三连哦。 一、前言 【GameFramework框架】系列教程目录#xff1a; https://blog.csdn.net/q7… 推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址 大家好我是佛系工程师☆恬静的小魔龙☆不定时更新Unity开发技巧觉得有用记得一键三连哦。 一、前言 【GameFramework框架】系列教程目录 https://blog.csdn.net/q764424567/article/details/135831551 二、正文 2-1、介绍 本地化Localization也就是我们所说的不同地区的语言适配比如说中文版“你好”英文版是“Hello”。 GameFramework在本地化方面不仅支持文本的本地化还支持任意资源的本地化比如说游戏中释放烟花的特效也可以做出不同地区的版本使得中文版烟花里面的“新年好”字样的特效在英文版里面是“Happy New Year”字样的特效。 2-2、使用说明 2-2-1、准备语言版本 官方示例项目StarForce里面默认提供了四种语言的版本路径在Assets/GameMain/Localization里面 首先需要将对应的语言写成XML文件格式为一个Key对应一个Value这个格式不能更改因为涉及到后面的语言表的解析。 2-2-2、语言设置 启动流程ProcedureLaunch.cs的OnEnter方法中进行了语言的设置 using GameFramework.Localization; using System; using UnityGameFramework.Runtime; using ProcedureOwner GameFramework.Fsm.IFsmGameFramework.Procedure.IProcedureManager;namespace StarForce {public class ProcedureLaunch : ProcedureBase{protected override void OnEnter(ProcedureOwner procedureOwner){base.OnEnter(procedureOwner);// 语言配置设置当前使用的语言如果不设置则默认使用操作系统语言InitLanguageSettings();}private void InitLanguageSettings(){if (GameEntry.Base.EditorResourceMode GameEntry.Base.EditorLanguage ! Language.Unspecified){// 编辑器资源模式直接使用 Inspector 上设置的语言return;}Language language GameEntry.Localization.Language;if (GameEntry.Setting.HasSetting(Constant.Setting.Language)){try{string languageString GameEntry.Setting.GetString(Constant.Setting.Language);language (Language)Enum.Parse(typeof(Language), languageString);}catch{}}if (language ! Language.English language ! Language.ChineseSimplified language ! Language.ChineseTraditional language ! Language.Korean){// 若是暂不支持的语言则使用英语language Language.English;GameEntry.Setting.SetString(Constant.Setting.Language, language.ToString());GameEntry.Setting.Save();}GameEntry.Localization.Language language;Log.Info(Init language settings complete, current language is {0}., language.ToString());}} }这里用到了配置组件SettingComponent获取数据首次进入游戏这个值没有设置会默认使用系统语言。 编辑器模式下直接使用编辑器配置的语言。 2-2-3、语言表加载加入本地化组件 启动流程ProcedureLaunch.cs的LoadDictionary方法中进行了语言表加载 private void LoadDictionary(string dictionaryName) {string dictionaryAssetName AssetUtility.GetDictionaryAsset(dictionaryName, false);m_LoadedFlag.Add(dictionaryAssetName, false);GameEntry.Localization.ReadData(dictionaryAssetName, this); }通过语言名称获取加载路径 public static string GetDictionaryAsset(string assetName, bool fromBytes) {return Utility.Text.Format(Assets/GameMain/Localization/{0}/Dictionaries/{1}.{2}, GameEntry.Localization.Language, assetName, fromBytes ? bytes : xml); }并读取其中的key-value的键值对保存到本地化Localization组件中。 2-2-4、语言加载 语言加载完成后如下图在UI父类UGuiForm.cs里获取了UI所有的text组件。并将text当前值作为key去获取对应value并将value写入text protected override void OnInit(object userData) {base.OnInit(userData);m_CachedCanvas gameObject.GetOrAddComponentCanvas();m_CachedCanvas.overrideSorting true;OriginalDepth m_CachedCanvas.sortingOrder;m_CanvasGroup gameObject.GetOrAddComponentCanvasGroup();RectTransform transform GetComponentRectTransform();transform.anchorMin Vector2.zero;transform.anchorMax Vector2.one;transform.anchoredPosition Vector2.zero;transform.sizeDelta Vector2.zero;gameObject.GetOrAddComponentGraphicRaycaster();Text[] texts GetComponentsInChildrenText(true);for (int i 0; i texts.Length; i){texts[i].font s_MainFont;if (!string.IsNullOrEmpty(texts[i].text)){texts[i].text GameEntry.Localization.GetString(texts[i].text);}} }文本需要动态赋值也可以使用同样的方式比如判断版本的流程ProcedureCheckVersion.cs的更新游戏应用的时候使用 if (m_VersionInfo.ForceUpdateGame) {// 需要强制更新游戏应用GameEntry.UI.OpenDialog(new DialogParams{Mode 2,Title GameEntry.Localization.GetString(ForceUpdate.Title),Message GameEntry.Localization.GetString(ForceUpdate.Message),ConfirmText GameEntry.Localization.GetString(ForceUpdate.UpdateButton),OnClickConfirm GotoUpdateApp,CancelText GameEntry.Localization.GetString(ForceUpdate.QuitButton),OnClickCancel delegate (object userData) { UnityGameFramework.Runtime.GameEntry.Shutdown(ShutdownType.Quit); },});return; }2-2-5、游戏中切换语言 在游戏内部更改并保存语言的话会调用SettingForm.cs里面的OnSubmitButtonClick函数在设置完成后停止播放音乐并重启游戏框架 public void OnSubmitButtonClick() {if (m_SelectedLanguage GameEntry.Localization.Language){Close();return;}GameEntry.Setting.SetString(Constant.Setting.Language, m_SelectedLanguage.ToString());GameEntry.Setting.Save();GameEntry.Sound.StopMusic();UnityGameFramework.Runtime.GameEntry.Shutdown(ShutdownType.Restart); }2-3、实现及代码分析 三、后记 如果觉得本篇文章有用别忘了点个关注关注不迷路持续分享更多Unity干货文章。 你的点赞就是对博主的支持有问题记得留言 博主主页有联系方式。 博主还有跟多宝藏文章等待你的发掘哦 专栏方向简介Unity3D开发小游戏小游戏开发教程分享一些使用Unity3D引擎开发的小游戏分享一些制作小游戏的教程。Unity3D从入门到进阶入门从自学Unity中获取灵感总结从零开始学习Unity的路线有C#和Unity的知识。Unity3D之UGUIUGUIUnity的UI系统UGUI全解析从UGUI的基础控件开始讲起然后将UGUI的原理UGUI的使用全面教学。Unity3D之读取数据文件读取使用Unity3D读取txt文档、json文档、xml文档、csv文档、Excel文档。Unity3D之数据集合数据集合数组集合数组、List、字典、堆栈、链表等数据集合知识分享。Unity3D之VR/AR虚拟仿真开发虚拟仿真总结博主工作常见的虚拟仿真需求进行案例讲解。Unity3D之插件插件主要分享在Unity开发中用到的一些插件使用方法插件介绍等Unity3D之日常开发日常记录主要是博主日常开发中用到的用到的方法技巧开发思路代码分享等Unity3D之日常BUG日常记录记录在使用Unity3D编辑器开发项目过程中遇到的BUG和坑让后来人可以有些参考。
http://www.zqtcl.cn/news/207947/

相关文章:

  • 建个注册页面网站做网站坚持多少年会有起色
  • 做网站是什么职位工商局网站查询入口
  • 做腰椎核磁证网站是 收 七如何做个盈利的网站
  • wordpress查看站点购物网站的后台做哪些东西
  • 文化馆为何需要建设自己的网站网站的建设教程
  • o2o网站策划京北网app下载
  • 公众号链接电影网站怎么做禁止wordpress保存修订版
  • 免费网站建设排行网站开发需要注册账户吗
  • 深圳营销网站建设免费网站添加站长统计
  • 建设银行网站怎么能转账代理ip注册网站都通不过
  • 一台服务器做两个网站吗明空网络做网站好不好
  • 正定县建设局网站东莞微信网站建设咨询
  • 网站开发免费视频教程网站备案帐号是什么情况
  • 知名门户网站小程序页面设计报价
  • 蒲城矿建设备制造厂网站喀什哪有做网站的
  • 网站内页产品做跳转三合一商城网站
  • 做网站找不到客户兰州 网站制作
  • 广州中小学智慧阅读门户网站中山网站建设方案推广
  • 长沙网站建设专家排行榜
  • 清河企业做网站wordpress淘宝客插件开发
  • 网站上传连接失败的原因微信app网站建设
  • 服装网站源码php建设厅网站合同备案在哪里
  • o2o网站建设多少钱公司设计网站定制
  • asp.net 企业网站后台管理系统源码中国vs菲律宾
  • 成都家装排名前十名wordpress优化方法
  • 南阳做网站公司网站开发服务费分录
  • 网络课程网站建设龙岩个人小程序开发
  • 上海网络推广报价seo技术培训机构
  • 在线看免费网站哪个设计培训机构好
  • 网站建设制作确认单网站建设策划书格式及范文