Erhalten Sie jederzeit lokalisierten Text und Assets

Diese Seite wurde aktualisiert :
Erstellungsdatum der Seite :

Verifizierungsumgebung

Fenster
  • Windows 11
Unity-Editor
  • 2021.3.12f1
Eingabesystem (Unity Technologies)
  • 1.4.4
Lokalisierung (Unity Technologies)
  • 1.3.2

Voraussetzungen für diesen Tipp

Die folgenden Einstellungen wurden im Vorfeld als Prämisse für die Beschreibung dieses Tipps vorgenommen.

Ziele unserer Tipps

Wenn Sie auf die Schaltfläche klicken, wird der Zieltext aus der Lokalisierungstabelle auf dem Ladebildschirm angezeigt.

Erforderliche Kenntnisse und Vorbereitung

Bei diesem Tipp wird davon ausgegangen, dass der folgende Text lokalisiert wird: Da wir jedoch nicht alle implementieren werden, werden wir das Verfahren von 1 hier posten, aber wir werden den doppelten Inhalt vereinfachen.

Installieren des Lokalisierungspakets

Die Vorgehensweise ist hier die gleiche.

Erstellen einer Lokalisierung

Dies ist das gleiche wie zuvor, daher werde ich nur das Bild posten.

Hier erstellen wir einen Ordner "Lokalisierung" im Ordner "Szenen" und legen ihn darin an.

Erstellen eines Gebietsschemas

Dies ist auch das gleiche wie zuvor, daher lasse ich die detaillierte Vorgehensweise weg. Die hinzuzufügenden Gebietsschemata sind "Japanisch (ja)", "Englisch (en)" und "Spanisch (es)".

Ich habe den bereits erwähnten Ordner "Lokalisierung" angegeben.

Belassen Sie das Standardgebietsschema auf "Japanisch (ja)".

Erstellen von Texten

Belassen Sie den Tabellennamen TextTable als .

Localization Erstellen Sie einen Ordner innerhalb TextTable des Ordners und geben Sie ihn an.

Erstellen Sie einen Text. Dieses Mal besteht der Zweck darin, es programmgesteuert zu erhalten, sodass Sie vorerst eines registrieren können.

Platzierung der Benutzeroberfläche

Ich möchte den Text und die Schaltfläche platzieren, und wenn ich auf die Schaltfläche klicke, möchte ich den Text des aktuellen Gebietsschemas anzeigen.

Erstellen und Anhängen von Skripten

Erstellen Sie ein Skript. ButtonEvent Behalten Sie den Namen als .

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;
  }
}

Geben Sie ein, was passiert, wenn auf die Schaltfläche geklickt wird. Alles, was wir hier tun, ist eine LocalizationSettings.StringDatabase.GetTableEntry Sache: Sie können den Eintrag der Ergebnismenge erhalten, indem Sie den Tabellennamen und den Schlüssel angeben, die in der Lokalisierung in der Methode erstellt wurden. Dieses Mal machen wir es mit Text, aber Assets können auch LocalizationSettings.AssetDatabase mit erhalten werden.

Sobald Sie den Eintrag haben, müssen Sie nur noch den Wert erhalten, den Sie haben. Der Inhalt ist der Text des ausgewählten Gebietsschemas. Dieses Mal wird es durch synchrone Verarbeitung erhalten, aber Sie können auch asynchrone Methoden verwenden.

Fügen Sie das Skript an das EventSystem an. Legen Sie auch den Text fest.

Weisen Sie der Schaltfläche eine Klickbehandlung zu.

Ausführen und Überprüfen

Versuchen Sie, es auszuführen, nachdem Sie die Einrichtung abgeschlossen haben. Da in der Benutzeroberfläche keine Lokalisierungsereignisse festgelegt sind, ändert sich der Text beim Ausführen nicht.

Klicken Sie auf die Schaltfläche, um zum japanischen Text zu wechseln. Dies liegt daran, dass das aktuelle Gebietsschema des Japanischen ausgewählt ist.

Versuchen Sie, das Gebietsschema in der oberen rechten Ecke des Bildschirms zu ändern, und klicken Sie dann auf die Schaltfläche. Er sollte sich in den Text für das Zielgebietsschema ändern.