Yerel ayarı istediğiniz zaman değiştirin

Sayfa güncel :
Sayfa oluşturma tarihi :

Doğrulama ortamı

Windows
  • Pencereler 11
Birlik Editörü
  • 2021.3.12f1
Giriş Sistemi (Unity Technologies)
  • 1.4.3
Yerelleştirme (Unity Technologies)
  • 1.3.2

Bu ipucu için önkoşullar

Aşağıdaki ayarlar, bu ipucunun açıklaması için bir öncül olarak önceden yapılmıştır.

Ön koşul bilgisi ve hazırlık

Bu ipucu, aşağıdaki metnin yerelleştirildiğini varsayar: İlk olarak, yerelleştirilmiş metni görüntülemeye hazırlanmak için lütfen aşağıdaki ipuçlarına bakın.

Yerel ayarı değiştirmek için düğmeleri yerleştirme

Unity Editor'da çalıştırırsanız, ekranın sağ üst köşesindeki yerel ayarı değiştirebilirsiniz, ancak oyunu oluşturduktan sonra bu işleve sahip değildir ve kendiniz hazırlamanız gerekir. Bu kez, "Japonca (ja)", "İngilizce (en)" ve "İspanyolca (es)" üç dil arasında geçiş yapmak için bir düğme yerleştireceğim ve bunları değiştirmek için tıklayacağım.

Düğmeler için komut dosyası oluşturma

Düğmeyi tıklattığınızda hedef yöntemin çağrıldığından emin olun. Bu genel amaçlı bir prosedürdür, bu yüzden ayrıntıları atlayacağım. Ayrıntılı talimatlar için aşağıdaki ipuçlarına bakın.

ButtonEvent Adıyla bir komut dosyası oluşturun.

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

Her yöntemi bir düğme tıklatmasına atayın.

Yerel ayar değişikliklerini işleme

Kodu aşağıdaki gibi değiştirin:

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

Değişikliğin kendisi basittir LocalizationSettings.SelectedLocale ve sadece mülkteki hedefi Locale ayarlayarak değiştirilebilir. Locale Locale.CreateLocale yöntemde yerel ayarın adı ayarlanarak oluşturulabilir.

Ancak, yerel ayar değiştirme işlemi zaman uyumsuz olduğundan, ayarlanan bir sonraki işlem,LocalizationSettings.SelectedLocale yerel ayarın zaten tamamen değiştirildiği anlamına gelmez. Yerel ayara bağımlı işlemler yapıyorsanız dikkatli olun.

Çalıştırma ve doğrulama

Hepsi bu kadar, bu yüzden lütfen çalıştırın ve hareketi kontrol edin. Oyun ekranının sağ üst köşesinde, çeşitli kaynakların yerel ayarı değiştirdiğinizde olduğu gibi dinamik olarak değiştiğini görebilirsiniz.