Λήψη λίστας τοπικών ρυθμίσεων που έχετε δημιουργήσει

Σελίδα ενημέρωση :
Ημερομηνία δημιουργίας σελίδας :

Περιβάλλον επαλήθευσης

παράθυρα
  • Παράθυρα 11
Επεξεργαστής ενότητας
  • 2021.3.12στ1
Σύστημα εισόδου (Unity Technologies)
  • 1.4.4
Τοπική προσαρμογή (Unity Technologies)
  • 1.3.2

Προϋποθέσεις για αυτήν τη συμβουλή

Οι ακόλουθες ρυθμίσεις έχουν γίνει εκ των προτέρων ως προϋπόθεση για την περιγραφή αυτής της συμβουλής.

Στόχοι των συμβουλών μας

Εμφανίζει μια λίστα με τις αντίστοιχες τοπικές ρυθμίσεις στο αναπτυσσόμενο περιβάλλον εργασίας χρήστη και εναλλάσσει το εμφανιζόμενο κείμενο ώστε να ταιριάζει με τις τοπικές ρυθμίσεις που έχει επιλέξει ο χρήστης.

Προαπαιτούμενες γνώσεις και προετοιμασία

Αυτή η συμβουλή προϋποθέτει τοπική προσαρμογή του ακόλουθου κειμένου: Αρχικά, ανατρέξτε στις παρακάτω συμβουλές για να προετοιμαστείτε για την εμφάνιση μεταφρασμένου κειμένου.

Αλλαγή τοπικών ρυθμίσεων αναπτυσσόμενη τοποθέτηση

Παρέχει ένα αναπτυσσόμενο μενού για την εμφάνιση μιας λίστας τοπικών ρυθμίσεων. Χρειάζεται μόνο να μπορείτε να εμφανίσετε και να επιλέξετε, επομένως βεβαιωθείτε ότι οι παράμετροι περιβάλλοντος εργασίας χρήστη έχουν οριστεί κατάλληλα.

Λήψη λίστας τοπικών ρυθμίσεων

Μπορείτε να λάβετε μια λίστα τοπικών ρυθμίσεων LocalizationSettings.AvailableLocales.Locales που δημιουργήθηκαν στο . Εάν το χρησιμοποιήσετε και το ορίσετε στο αναπτυσσόμενο μενού στην αρχή της σκηνής, είστε εντάξει. Ωστόσο, η προετοιμασία ενδέχεται να μην έχει ολοκληρωθεί κατά Localization την εκκίνηση του παιχνιδιού, επομένως ίσως χρειαστεί να περιμένετε να ολοκληρωθεί.

Αρχικά, δημιουργήστε ένα σενάριο. DropDownEvent Αφήστε το όνομα ως .

Το σενάριο μοιάζει με αυτό:

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 Η μέθοδος εκτελεί επεξεργασία στην αρχή της σκηνής, αλλά σε αυτό το σημείο Localization , η αρχικοποίηση μπορεί να μην έχει ολοκληρωθεί. await LocalizationSettings.InitializationOperation.Task Περιμένετε να ολοκληρωθεί η προετοιμασία. await , οπότε Start προσθέστε το async στη μέθοδο.

LocalizationSettings.AvailableLocales.Locales Στη συνέχεια, περιέχει μια λίστα τοπικών ρυθμίσεων που δημιουργήσατε, επομένως foreach επεξεργαστείτε όσες τοπικές ρυθμίσεις θέλετε. Dropdown.OptionData Ορίστε Dropdown το όνομα των τοπικών ρυθμίσεων σε και προσθέστε το στο .

Για να επιλέξετε Dropdown.value τις τρέχουσες τοπικές ρυθμίσεις στο αναπτυσσόμενο μενού, αναζητήστε τις τοπικές ρυθμίσεις προορισμού στην ιδιότητα και ορίστε το ευρετήριο.

Αυτό είναι το τέλος της δημιουργίας της λίστας, αλλά θέλω επίσης να συμπεριλάβω μια διαδικασία που αλλάζει τις τοπικές ρυθμίσεις όταν επιλέγεται το αναπτυσσόμενο στοιχείο. onValueChanged Προσθέτει εναλλαγή τοπικών ρυθμίσεων στο συμβάν. Αυτό είναι το ίδιο με την προηγούμενη συμβουλή.

Επισυνάψτε το σενάριο που δημιουργήσατε στο αναπτυσσόμενο μενού.

Εκτέλεση και επαλήθευση

Δοκιμάστε να εκτελέσετε το παιχνίδι για να το ελέγξετε. Υπάρχει μια στιγμή που η λίστα τοπικών ρυθμίσεων δεν ορίζεται αμέσως μετά την έναρξη του παιχνιδιού, Localization επειδή δεν έχει αρχικοποιηθεί.

Μετά από λίγο χρόνο, θα πρέπει να μπορείτε να δείτε τη λίστα των τοπικών ρυθμίσεων που έχουν καταχωρηθεί στο αναπτυσσόμενο μενού. Εάν προσπαθήσετε να αλλάξετε στοιχεία, θα πρέπει να μπορείτε να δείτε ότι το περιεχόμενο του κειμένου αλλάζει.