किसी भी समय स्थान बदलें

पेज अद्यतन :
पेज निर्माण की तारीख :

सत्यापन वातावरण

विंडोज़
  • विंडोज 11
एकता संपादक
  • 2021.3.12f1
इनपुट सिस्टम (एकता प्रौद्योगिकी)
  • 1.4.3
स्थानीयकरण (एकता प्रौद्योगिकी)
  • 1.3.2

इस टिप के लिए आवश्यक शर्तें

इस टिप के विवरण के लिए एक आधार के रूप में निम्नलिखित सेटिंग्स पहले से बनाई गई हैं।

आवश्यक ज्ञान और तैयारी

यह टिप निम्न पाठ का स्थानीयकरण मानता है: सबसे पहले, स्थानीयकृत पाठ प्रदर्शित करने के लिए तैयार करने के लिए कृपया निम्न युक्तियों को देखें।

स्थान बदलने के लिए बटन रखना

यदि आप इसे यूनिटी एडिटर में चलाते हैं, तो आप स्क्रीन के ऊपरी दाएं कोने में लोकेल बदल सकते हैं, लेकिन गेम बनाने के बाद, इसमें वह फ़ंक्शन नहीं है और आपको इसे स्वयं तैयार करने की आवश्यकता है। इस बार, मैं तीन भाषाओं "जापानी (ja)", "अंग्रेजी (en)", और "स्पेनिश (es)" के बीच स्विच करने के लिए एक बटन रखूंगा और उन्हें स्विच करने के लिए क्लिक करूंगा।

बटन के लिए स्क्रिप्टिंग

सुनिश्चित करें कि बटन क्लिक करते समय लक्ष्य विधि कॉल की जाती है. यह एक सामान्य-उद्देश्य प्रक्रिया है, इसलिए मैं विवरण छोड़ दूंगा। विस्तृत निर्देशों के लिए निम्न युक्तियाँ देखें.

ButtonEvent नाम के साथ एक स्क्रिप्ट बनाएँ.

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

प्रत्येक विधि को एक बटन क्लिक पर असाइन करें.

स्थानीय परिवर्तनों को संभालना

कोड को निम्नानुसार संशोधित करें:

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

परिवर्तन अपने आप में सरल LocalizationSettings.SelectedLocale है और इसे केवल संपत्ति में लक्ष्य Locale निर्धारित करके स्विच किया जा सकता है। Locale Locale.CreateLocale विधि में लोकेल का नाम सेट करके बनाया जा सकता है।

हालांकि, चूंकि लोकेल परिवर्तन प्रक्रिया अतुल्यकालिक है, इसलिएLocalizationSettings.SelectedLocale अगली प्रक्रिया जो सेट होती है उसका मतलब यह नहीं है कि लोकेल पहले से ही पूरी तरह से स्विच हो चुका है। यदि आप स्थानीय-निर्भर संचालन कर रहे हैं तो सावधान रहें।

चलाएँ और सत्यापित करें

यह सब इसके लिए है, इसलिए कृपया इसे चलाएं और आंदोलन की जांच करें। गेम स्क्रीन के ऊपरी दाएं कोने में, आप देख सकते हैं कि विभिन्न संसाधन गतिशील रूप से उसी तरह से स्विच करते हैं जैसे आप स्थान बदलते हैं।