ESLanguage.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using Assets;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using UnityEngine;
  5. using UnityEngine.UI;
  6. public class ESLanguage : MonoBehaviour
  7. {
  8. public GameObject tabIcon;
  9. private Toggle[] Toggles;
  10. private void Awake()
  11. {
  12. LanguageSwtich();
  13. Toggles = transform.GetComponentsInChildren<Toggle>();
  14. #if UNITY_STANDALONE_WIN
  15. tabIcon.SetActive(true);
  16. #elif UNITY_ANDROID
  17. tabIcon.SetActive(false);
  18. #elif UNITY_WEBGL
  19. #endif
  20. }
  21. void Update()
  22. {
  23. Toggles[(int)LanguageMatchManager.Instance.GetCurLanType()].isOn = true;
  24. }
  25. void LanguageSwtich()
  26. {
  27. var toggles = transform.GetComponentsInChildren<Toggle>();
  28. for (int i = 0; i < toggles.Length; i++)
  29. {
  30. int index = i;
  31. toggles[index].onValueChanged.AddListener((isOn) =>
  32. {
  33. toggles[index].transform.Find("On").gameObject.SetActive(isOn);
  34. if (isOn)
  35. {
  36. LanguageMatchManager.Instance.RefreshLanguage(index);
  37. }
  38. OnLanguageChanged(toggles[index]);
  39. });
  40. }
  41. toggles[(int)LanguageMatchManager.Instance.GetCurLanType()].isOn = true;
  42. }
  43. void OnLanguageChanged(Toggle toggle)
  44. {
  45. }
  46. }