ان مقامات کی فہرست حاصل کریں جو آپ نے بنائے ہیں
تصدیق کا ماحول
- Windows
-
- ونڈوز 11
- یونٹی ایڈیٹر
-
- 2021.3.12f1
- ان پٹ سسٹم (یونٹی ٹیکنالوجیز)
-
- 1.4.4
- لوکلائزیشن (یونٹی ٹیکنالوجیز)
-
- 1.3.2
اس ٹوٹکے کے لئے ضروری شرائط
مندرجہ ذیل ترتیبات اس ٹپ کی وضاحت کے لئے بنیاد کے طور پر پیشگی بنائی گئی ہیں۔
ہماری تجاویز کے مقاصد
ڈراپ ڈاؤن یو آئی میں متعلقہ مقامات کی ایک فہرست دکھاتا ہے اور صارف کے ذریعہ منتخب کردہ مقام سے میل کرنے کے لئے ڈسپلے ٹیکسٹ کو ٹوگل کرتا ہے۔
ضروری علم اور تیاری
یہ اشارہ مندرجہ ذیل متن کی لوکلائزیشن کو فرض کرتا ہے: سب سے پہلے، براہ کرم مقامی متن کو ظاہر کرنے کی تیاری کے لئے مندرجہ ذیل تجاویز کا حوالہ دیں.
Locale change Drop-ڈاؤنپلیسمنٹ
مقامات کی فہرست ظاہر کرنے کے لئے ڈراپ ڈاؤن فراہم کرتا ہے۔ آپ کو صرف ڈسپلے اور منتخب کرنے کے قابل ہونے کی ضرورت ہے ، لہذا اس بات کو یقینی بنائیں کہ یو آئی پیرامیٹرز مناسب طریقے سے ترتیب دیئے گئے ہیں۔
مقامات کی ایک فہرست حاصل کریں
آپ اس میں بنائے گئے مقامات کی ایک فہرست حاصل کرسکتے ہیں 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
کیونکہ شروع نہیں کیا جاتا ہے۔
تھوڑے وقت کے بعد ، آپ کو ڈراپ ڈاؤن میں رجسٹرڈ مقامات کی فہرست دیکھنے کے قابل ہونا چاہئے۔ اگر آپ آئٹمز کو تبدیل کرنے کی کوشش کرتے ہیں تو ، آپ کو یہ دیکھنے کے قابل ہونا چاہئے کہ متن کا مواد تبدیل ہوتا ہے۔