Obține oricând text și materiale localizate
Mediul de verificare
- Windows
-
- Ferestre 11
- Unity Editor
-
- 2021.3.12F1
- Sistem de intrare (Unity Technologies)
-
- 1.4.4
- Localizare (Unity Technologies)
-
- 1.3.2
Cerințe preliminare pentru acest sfat
Următoarele setări au fost făcute în avans ca premisă pentru descrierea acestui sfat.
Obiectivele sfaturilor noastre
Când faceți clic pe buton, textul țintă din tabelul de localizare este afișat pe ecranul de încărcare.
Cunoștințe și pregătire prealabile
Acest sfat presupune localizarea următorului text: Cu toate acestea, deoarece nu le vom implementa pe toate, vom posta procedura de la 1 aici, dar vom simplifica conținutul duplicat.
Instalarea pachetului de localizare
Procedura este aceeași aici.
Crearea unei localizări
Acest lucru este la fel ca înainte, așa că voi posta doar imaginea.
Aici, creăm un folder "Localizare" în folderul "Scene" și îl creăm în el.
Crearea unei setări regionale
Acest lucru este, de asemenea, la fel ca înainte, așa că voi omite procedura detaliată. Setările regionale de adăugat sunt "Japoneză (ja)", "Engleză (en)" și "Spaniolă (es)".
Am specificat folderul "Localizare" menționat mai devreme.
Lăsați setările regionale implicite ca "Japoneză (ja)".
Crearea de texte
Lăsați numele TextTable
tabelului ca .
Localization
Creați un folder în interiorul TextTable
folderului și specificați-l.
Creați un text. De data aceasta, scopul este de a-l obține programatic, astfel încât să puteți înregistra unul pentru moment.
Plasarea UI
Aș dori să plasez textul și butonul, iar când fac clic pe buton, vreau să afișez textul alocării curente.
Crearea și atașarea scripturilor
Creați un script. ButtonEvent
Lăsați numele ca .
using UnityEngine;
using UnityEngine.Localization.Settings;
using UnityEngine.UI;
public class ButtonEvent : MonoBehaviour
{
[SerializeField] private Text Text;
public void OnClick()
{
// Localization から指定したテーブル名とキーからエントリーを取得します
var entry = LocalizationSettings.StringDatabase.GetTableEntry("TextTable", "Hello").Entry;
Text.text = entry.Value;
}
}
Introduceți ce se întâmplă când se face clic pe buton.
Tot ce facem aici este un LocalizationSettings.StringDatabase.GetTableEntry
singur lucru: puteți obține intrarea setului găsit specificând numele tabelului și cheia creată în Localizare în metodă.
De data aceasta o facem cu text, dar activele pot fi obținute și LocalizationSettings.AssetDatabase
folosind .
Odată ce aveți intrarea, tot ce trebuie să faceți este să obțineți valoarea pe care o aveți. Conținutul este textul setărilor regionale selectate. De data aceasta se obține prin procesare sincronă, dar puteți utiliza și metode asincrone.
Atașați scriptul la EventSystem. Setați și textul.
Atribuiți butoanelor manipularea clicurilor.
Rulați și verificați
Încercați să îl rulați după ce terminați de configurat. Deoarece nu sunt setate evenimente de localizare în interfața cu utilizatorul, textul nu se modifică atunci când este executat.
Faceți clic pe buton pentru a comuta la textul japonez. Acest lucru se datorează faptului că este selectată locația curentă a japonezilor.
Încercați să modificați setările regionale din colțul din dreapta sus al ecranului, apoi faceți clic pe buton. Ar trebui să se schimbe în textul pentru locația țintă.