Abrufen einer Liste der von Ihnen erstellten Gebietsschemata

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

Zeigt eine Liste der entsprechenden Gebietsschemas in der Dropdown-Benutzeroberfläche an und schaltet den Anzeigetext so um, dass er mit dem vom Benutzer ausgewählten Gebietsschema übereinstimmt.

Voraussetzungskenntnisse und Vorbereitung

Dieser Tipp setzt die Lokalisierung des folgenden Textes voraus: Beachten Sie zunächst die folgenden Tipps, um die Anzeige von lokalisiertem Text vorzubereiten.

Dropdown-Platzierung für Gebietsschemaänderung

Stellt eine Dropdownliste bereit, in der eine Liste der Gebietsschemas angezeigt wird. Sie müssen nur in der Lage sein, anzuzeigen und auszuwählen, stellen Sie also sicher, dass die UI-Parameter entsprechend eingestellt sind.

Abrufen einer Liste von Gebietsschemata

Sie können eine Liste der Gebietsschemata LocalizationSettings.AvailableLocales.Locales abrufen, die in erstellt wurden. Wenn Sie dies verwenden und es auf das Dropdown-Menü am Anfang der Szene einstellen, sind Sie in Ordnung. Es kann jedoch sein, dass Localization die Initialisierung beim Start des Spiels noch nicht abgeschlossen ist, sodass Sie möglicherweise warten müssen, bis sie abgeschlossen ist.

Erstellen Sie zunächst ein Skript. DropDownEvent Lassen Sie den Namen als .

Das Skript sieht wie folgt aus:

using UnityEngine;
using UnityEngine.Localization.Settings;
using UnityEngine.UI;

public class DropDownEvent : MonoBehaviour
{
  // 最初のフレームアップデートの前に開始が呼び出されます
  async void Start()
  {
    // Localization の初期化が完了するまで待機します
    await LocalizationSettings.InitializationOperation.Task;

    // 処理対象の Dropdown コンポーネントを取得します
    var dropdownLocale = GetComponent<Dropdown>();
    dropdownLocale.options.Clear();

    // LocalizationSettings.AvailableLocales.Locales からロケール一覧を取得してオプションを追加します
    foreach (var locale in LocalizationSettings.AvailableLocales.Locales)
    {
      dropdownLocale.options.Add(new Dropdown.OptionData(locale.name));
    }

    // 初期選択されているロケールのインデックスを取得して選択します
    dropdownLocale.value = LocalizationSettings.AvailableLocales.Locales.IndexOf(LocalizationSettings.SelectedLocale);

    // ドロップダウンのアイテムが選択されたときにロケールを変更します
    dropdownLocale.onValueChanged.AddListener((index) =>
    {
      LocalizationSettings.SelectedLocale = LocalizationSettings.AvailableLocales.Locales[index];
    });
  }
}

Start Die Methode führt die Verarbeitung zu Beginn der Szene durch, aber zu diesem Zeitpunkt Localization ist die Initialisierung von möglicherweise noch nicht abgeschlossen. await LocalizationSettings.InitializationOperation.Task Warten Sie, bis die Initialisierung abgeschlossen ist. await , also Start fügen Sie es bitte der async Methode hinzu.

LocalizationSettings.AvailableLocales.Locales Enthält als Nächstes eine Liste der Gebietsschemas, die Sie erstellt haben, also foreach verarbeiten Sie so viele Gebietsschemas, wie Sie möchten. Dropdown.OptionData Legen Sie den Gebietsschemanamen auf fest, und fügen Sie Dropdown ihn hinzu.

Um das aktuelle Gebietsschema in der Dropdownliste auszuwählen Dropdown.value , suchen Sie in der Eigenschaft nach dem Zielgebietsschema, und legen Sie den Index fest.

Dies ist das Ende der Erstellung der Liste, aber ich möchte auch einen Prozess einschließen, der das Gebietsschema ändert, wenn das Dropdown-Element ausgewählt wird. onValueChanged Fügt dem Ereignis einen Gebietsschemawechsel hinzu. Dies ist derselbe wie der vorherige Tipp.

Hängen Sie das von Ihnen erstellte Skript an die Dropdown-Liste an.

Ausführen und Verifizieren

Versuchen Sie, das Spiel auszuführen, um es auszuprobieren. Es gibt Zeiten, in denen die Locale-Liste nicht sofort nach dem Start des Spiels festgelegt wird, Localization da sie nicht initialisiert wird.

Nach einiger Zeit sollten Sie in der Lage sein, die Liste der registrierten Gebietsschemata in der Dropdown-Liste zu sehen. Wenn Sie versuchen, Elemente zu wechseln, sollten Sie sehen können, dass sich der Inhalt des Textes ändert.