怎么接做網(wǎng)站的任務(wù)seo在線優(yōu)化技術(shù)
前因:文本中的換行 \n沒有換行而是打印出來了,解決方式
因?yàn)閡nity會默認(rèn)把\n替換成\\n
面板中使用富文本這個選項(xiàng)啊 沒有用
m_text.text = m_text.text.Replace("\\n", "\n");
###動態(tài)中英文互譯
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
using UnityEngine.Video;
using System;
using static EasyLanguage;public class UIManage : MonoBehaviour//, IPointerDownHandler, IPointerUpHandler
{public VideoPlayer[] videoPlay;//實(shí)例private EasyLanguage m_language;//中英按鈕public Button chinese_btn;public Button sound_btn;private AudioSource audios;private bool sound;private bool chinese=true;//中文private void Awake(){m_language = EasyLanguage.GetInstance();}void Start() {audios = GetComponent<AudioSource>();chinese_btn.onClick.AddListener(ChineseChanged);ChineseChanged();}/// <summary>/// 中英互譯/// </summary>private void ChineseChanged(){if (chinese){chinese_btn.GetComponent<Image>().sprite = Resources.Load<Sprite>("UI/cn");m_language.Changedlanguage(EasyLanguage.LanguageList.cn);Debug.Log("Chinese");chinese = false;}else{chinese_btn.GetComponent<Image>().sprite = Resources.Load<Sprite>("UI/en");m_language.Changedlanguage(EasyLanguage.LanguageList.en);Debug.Log("English");chinese = true;}}/// <summary>/// 音頻播放/// </summary>private void Sound(){if(sound){sound_btn.GetComponent<Image>().sprite = Resources.Load<Sprite>("UI/on");audios.volume = 1;sound = false;}else{sound_btn.GetComponent<Image>().sprite = Resources.Load<Sprite>("UI/off");audios.volume = 0;sound = true;}}private void CloseVideo()//關(guān)閉視頻{for (int i = 0; i < videoPlay.Length; i++){videoPlay[i].gameObject.SetActive(false);}}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;public class EasyLanguageText : MonoBehaviour
{public string m_key;private Text m_text;// Start is called before the first frame updatevoid Start(){m_text = transform.GetChild(0).GetComponent<Text>();//調(diào)用靜態(tài)函數(shù) 注冊事件EasyLanguage.GetInstance().ReginsterELT(this);//加載中...OnLanguageChanged();}// Update is called once per framevoid Update(){}/// <summary>///unity文本組件沒有實(shí)現(xiàn)換行的效果/// 因?yàn)閡nity會默認(rèn)把\n替換成\\n/// m_text.text = m_text.text.Replace("\\n", "\n");/// </summary>public void OnLanguageChanged(){m_text.text = EasyLanguage.GetInstance().GetTextByKey(m_key);m_text.text = m_text.text.Replace("\\n", "\n");}
}
using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEngine;
/// <summary>
/// 中英互譯
/// key --> value
/// 儲存
/// </summary>
public class EasyLanguage
{#region 單例//靜態(tài)函數(shù)private static EasyLanguage m_instance;//實(shí)例public static EasyLanguage GetInstance(){if (m_instance == null){m_instance = new EasyLanguage();}return m_instance;}#endregion//鍵值儲存 key=str value=123private Dictionary<string, string> m_dic_elt;//集合private List<EasyLanguageText> m_list_elt;//構(gòu)造函數(shù)EasyLanguage(){//初始化容器m_dic_elt = new Dictionary<string, string>();m_list_elt = new List<EasyLanguageText>();//當(dāng)前語言m_currentLanguage = LanguageList.cn;//更新語言loadLanguage();OnLanguageChanged();}//事件:注冊public void ReginsterELT(EasyLanguageText elt){m_list_elt.Add(elt);}//事件:銷毀public void UnReginsterELT(EasyLanguageText elt){m_list_elt.Remove(elt);}//枚舉 語言類型public enum LanguageList{en,//英文cn//中文}//當(dāng)前語言類型private LanguageList m_currentLanguage;//獲取當(dāng)前語言public void Changedlanguage(LanguageList ll){//當(dāng)前值改成傳入的Debug.Log(m_currentLanguage+"-->"+ll);if (m_currentLanguage == ll) return;m_currentLanguage = ll;m_dic_elt.Clear();loadLanguage();OnLanguageChanged();}/// <summary>/// 語言切換/// </summary>public void OnLanguageChanged(){//if (m_currentLanguage == LanguageList.cn)//{// m_dic_elt.Add("h3", "yuan莊");// m_dic_elt.Add("h4", "lu莊");//}//else//{// m_dic_elt.Add("h3", "yuanzhuang");// m_dic_elt.Add("h4", "luzhuang");//}Debug.Log("OnLanguageChanged" );foreach (var elt in m_list_elt){elt.OnLanguageChanged(); }}/// <summary>/// 讀取key/// </summary>/// <param name="key"></param>/// <returns></returns>public string GetTextByKey(string key){return m_dic_elt[key];}/// <summary>///加載語言/// </summary>public void loadLanguage(){switch (m_currentLanguage){case LanguageList.en://英文StreamIOText("en");break;case LanguageList.cn://中文StreamIOText("cn");break;default:break;}}public void StreamIOText(string chinese){TextAsset asset = Resources.Load(chinese) as TextAsset;//流取出字節(jié)Stream st = new MemoryStream(asset.bytes);//逐行讀取StreamReader sr = new StreamReader(st);//每行都打印 只要不是最后一行while (!sr.EndOfStream){string line = sr.ReadLine();Debug.Log(line);string[] tempStrings = line.Split('=');m_dic_elt[tempStrings[0]] = tempStrings[1];}}
}