Lokaadi muutmine igal ajal
Kontrollimise keskkond
- Windows
-
- Windows 11
- Ühtsuse toimetaja
-
- 2021.3.12f1
- Sisendsüsteem (Unity Technologies)
-
- 1.4.3
- Lokaliseerimine (Unity Technologies)
-
- 1.3.2
Selle näpunäite eeltingimused
Selle vihje kirjeldamise eelduseks on eelnevalt tehtud järgmised sätted.
Eelduseks olevad teadmised ja ettevalmistus
See näpunäide eeldab järgmise teksti lokaliseerimist: Esiteks vaadake lokaliseeritud teksti kuvamiseks ettevalmistamiseks järgmisi näpunäiteid.
Nuppude paigutamine lokaadi muutmiseks
Kui käivitate selle Unity Editoris, saate muuta lokaati ekraani paremas ülanurgas, kuid pärast mängu ehitamist pole sellel funktsiooni ja peate selle ise ette valmistama. Seekord panen nupu kolme keele "Jaapani (ja)", "Inglise (en)" ja "Hispaania (es)" vahel vahetamiseks ja klõpsan nende vahetamiseks.
Nuppude skriptimine
Veenduge, et nupul klõpsates helistatakse sihtmeetodile. See on üldotstarbeline menetlus, seega jätan üksikasjad välja. Üksikasjalike juhiste saamiseks vaadake järgmisi näpunäiteid.
ButtonEvent
Looge skript nimega .
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()
{
}
}
Määrake igale meetodile nupuvajutus.
Lokaadi muudatuste käsitlemine
Muutke koodi järgmiselt:
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");
}
}
Muudatus ise on lihtne LocalizationSettings.SelectedLocale
ja seda saab vahetada, seades lihtsalt omaduse sihtmärgi Locale
.
Locale
Locale.CreateLocale
saab luua, määrates meetodis lokaadi nime.
Kuna aga lokaadi muutmise protsess on asünkroonne, ei tähenda järgmine komplektne protsess,LocalizationSettings.SelectedLocale
et lokaat on juba täielikult vahetatud.
Olge ettevaatlik, kui teete lokaadist sõltuvaid toiminguid.
Käivitage ja kontrollige
See on kõik, mis seal on, nii et palun käivitage see ja kontrollige liikumist. Mängu ekraani paremas ülanurgas näete, et erinevad ressursid lülituvad dünaamiliselt samamoodi nagu lokaadi muutmisel.