Területi beállítás bármikor módosítható

Oldal frissítve :
Oldal létrehozásának dátuma :

Ellenőrzési környezet

Windows
  • Windows 11 esetén
Unity-szerkesztő
  • 2021.3.12f1
Beviteli rendszer (Unity Technologies)
  • 1.4.3
Lokalizáció (Unity Technologies)
  • 1.3.2

A tipp előfeltételei

A következő beállításokat előre elvégeztük a tipp leírásának előfeltételeként.

Előfeltétel ismeretek és felkészülés

Ez a tipp feltételezi a következő szöveg honosítását: Először olvassa el az alábbi tippeket a honosított szöveg megjelenítésének előkészítéséhez.

Gombok elhelyezése a területi beállítás módosításához

Ha a Unity Editorban futtatja, megváltoztathatja a képernyő jobb felső sarkában található területi beállítást, de a játék felépítése után nem rendelkezik ezzel a funkcióval, és magának kell elkészítenie. Ezúttal elhelyezek egy gombot a három nyelv közötti váltáshoz: "Japán (ja)", "Angol (en)" és "Spanyol (es)", és rákattintok a váltáshoz.

Gombok szkriptelése

Győződjön meg arról, hogy a cél metódus meghívásra kerül, amikor a gombra kattint. Ez egy általános célú eljárás, ezért kihagyom a részleteket. A részletes utasításokért tekintse meg az alábbi tippeket.

ButtonEvent Hozzon létre egy szkriptet . névvel

using UnityEngine;

public class ButtonEvent : MonoBehaviour
{
  /// <summary>Japanese (ja) ボタンをクリックしたとき。</summary>
  public void OnClickJa()
  {
  }

  /// <summary>English (en) ボタンをクリックしたとき。</summary>
  public void OnClickEn()
  {
  }

  /// <summary>Spanish (es) ボタンをクリックしたとき。</summary>
  public void OnClickEs()
  {
  }
}

Rendelje hozzá az egyes módszereket egy gombnyomáshoz.

A területi beállítások módosításainak kezelése

Módosítsa a kódot az alábbiak szerint:

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

public class ButtonEvent : MonoBehaviour
{
  /// <summary>Japanese (ja) ボタンをクリックしたとき。</summary>
  public void OnClickJa()
  {
    LocalizationSettings.SelectedLocale = Locale.CreateLocale("ja");
  }

  /// <summary>English (en) ボタンをクリックしたとき。</summary>
  public void OnClickEn()
  {
    LocalizationSettings.SelectedLocale = Locale.CreateLocale("en");
  }

  /// <summary>Spanish (es) ボタンをクリックしたとき。</summary>
  public void OnClickEs()
  {
    LocalizationSettings.SelectedLocale = Locale.CreateLocale("es");
  }
}

Maga a módosítás egyszerű LocalizationSettings.SelectedLocale , és egyszerűen átkapcsolható a cél Locale beállításával a tulajdonságban. Locale Locale.CreateLocale A területi beállítás nevének beállításával hozható létre a metódusban.

Mivel azonban a területi beállítás módosításának folyamata aszinkron, a következő beállított folyamat nem jelenti azt,LocalizationSettings.SelectedLocale hogy a területi beállítás már teljesen át lett kapcsolva. Legyen óvatos, ha területi beállítástól függő műveleteket végez.

Futtatás és ellenőrzés

Ez minden, ezért kérjük, futtassa és ellenőrizze a mozgást. A játékképernyő jobb felső sarkában láthatja, hogy a különböző erőforrások dinamikusan váltanak ugyanúgy, mint a területi beállítás módosításakor.