Canvieu la configuració regional en qualsevol moment

Pàgina actualitzada :
Data de creació de la pàgina :

Entorn de verificació

Windows
  • Finestres 11
Editor d'unitat
  • 2021.3.12f1
Sistema d'entrada (Unity Technologies)
  • 1.4.3
Localització (Unity Technologies)
  • 1.3.2

Requisits previs per a aquest consell

La configuració següent s'ha fet amb antelació com a premissa per a la descripció d'aquest consell.

Coneixements previs i preparació

Aquest consell assumeix la localització del text següent: En primer lloc, consulteu els consells següents per preparar-vos per mostrar text localitzat.

Col·locació de botons per canviar la configuració regional

Si l'executeu a l'editor Unity, podeu canviar la configuració regional a l'extrem superior dret de la pantalla, però després de construir el joc, no té aquesta funció i heu de preparar-lo vosaltres mateixos. Aquesta vegada, col·locaré un botó per canviar entre els tres idiomes "japonès (ja)", "anglès (en)" i "espanyol (es)" i fer clic per canviar-los.

Scripting per a botons

Assegureu-vos que el mètode de destinació s'anomeni quan feu clic al botó. Aquest és un procediment de propòsit general, de manera que ometre'n els detalls. Consulteu els consells següents per obtenir instruccions detallades.

ButtonEvent Creeu un script amb el nom .

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()
  {
  }
}

Assigneu cada mètode a un clic de botó.

Gestió de canvis de configuració regional

Modifiqueu el codi de la següent manera:

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

El canvi en si és senzill LocalizationSettings.SelectedLocale i es pot canviar simplement establint l'objectiu Locale a la propietat. Locale Locale.CreateLocale Es pot crear establint el nom de la configuració regional al mètode.

Tanmateix, atès que el procés de canvi de configuració regional és asíncron,LocalizationSettings.SelectedLocale el següent procés que s'estableix no significa que la configuració regional ja s'hagi canviat completament. Aneu amb compte si feu operacions dependents de la zona.

Executar i verificar

Això és tot el que hi ha, així que executeu-lo i comproveu el moviment. A l'extrem superior dret de la pantalla del joc, podeu veure que els diversos recursos canvien dinàmicament de la mateixa manera que quan canvieu la configuració regional.