Obține oricând text și materiale localizate

Pagina actualizată :
Data creării paginii :

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ă.