隨時更改區域設置
更新頁 :
頁面創建日期 :
驗證環境
- 窗戶
-
- 視窗 11
- 統一編輯器
-
- 2021.3.12f1
- 輸入系統(統一技術)
-
- 1.4.3
- 當地語系化(統一技術)
-
- 1.3.2
此提示的先決條件
作為此提示描述的前提,已預先進行了以下設置。
先決條件知識和準備
此提示假定以下文字的當地語系化: 首先,請參考以下提示來準備顯示本地化文本。
放置用於更改區域設置的按鈕
如果在 Unity 編輯器中運行它,則可以更改螢幕右上角的區域設置,但在構建遊戲後,它沒有該功能,您需要自己準備。 這次,我將放置一個按鈕,用於在三種語言“日語(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
因此設置的下一個過程並不意味著區域設置已經完全切換。
如果您正在執行與區域設置相關的操作,請小心。
運行並驗證
這就是它的全部內容,所以請運行它並檢查運動。 在遊戲螢幕的右上角,您可以看到各種資源以與更改區域設置時相同的方式動態切換。