MeView.cs 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5. public class MeView : MonoBehaviour
  6. {
  7. [SerializeField] Text nameText;
  8. [SerializeField] Button btnModify;
  9. [SerializeField] Button btnSave;
  10. [SerializeField] GameObject inputs;
  11. [SerializeField] Text tipText;
  12. void Start()
  13. {
  14. RenderAfterSave();
  15. }
  16. InputField GetInputField(Transform transform)
  17. {
  18. return transform.Find("InputField").GetComponent<InputField>();
  19. }
  20. public void Back() {
  21. AudioMgr.ins.PlayBtn();
  22. Destroy(this.gameObject);
  23. }
  24. public void Modify()
  25. {
  26. btnModify.interactable = false;
  27. btnSave.interactable = true;
  28. for (int i = 0; i < inputs.transform.childCount; i++)
  29. {
  30. InputField inputField = GetInputField(inputs.transform.GetChild(i));
  31. if (i == 2) {
  32. inputField.enabled = false;
  33. inputField.text = "";
  34. Transform toggleGroup = inputField.transform.parent.Find("ToggleGroup");
  35. toggleGroup.gameObject.SetActive(true);
  36. if (LoginMgr.myUserInfo.gender == "男") {
  37. toggleGroup.GetChild(0).GetComponent<Toggle>().isOn = true;
  38. } else {
  39. toggleGroup.GetChild(1).GetComponent<Toggle>().isOn = true;
  40. }
  41. } else {
  42. inputField.enabled = true;
  43. }
  44. }
  45. }
  46. public void Save()
  47. {
  48. string[] texts = new string[6];
  49. for (int i = 0; i < inputs.transform.childCount; i++)
  50. {
  51. InputField inputField = GetInputField(inputs.transform.GetChild(i));
  52. if (i == 0) {
  53. if (inputField.text.Trim().Length == 0) {
  54. tipText.color = Color.yellow;
  55. tipText.text = "昵称不能为空";
  56. return;
  57. }
  58. }
  59. if (i == 2) {
  60. Transform toggleGroup = inputField.transform.parent.Find("ToggleGroup");
  61. texts[i] = toggleGroup.GetChild(0).GetComponent<Toggle>().isOn ? "男" : "女";
  62. } else {
  63. texts[i] = inputField.text.Trim();
  64. }
  65. }
  66. tipText.text = "";
  67. LoginMgr.myUserInfo.nickname = texts[0];
  68. LoginMgr.myUserInfo.phone = texts[1];
  69. LoginMgr.myUserInfo.gender = texts[2];
  70. LoginMgr.myUserInfo.birthday = texts[3];
  71. LoginMgr.myUserInfo.national = texts[4];
  72. LoginMgr.myUserInfo.region = texts[5];
  73. LoginMgr.SaveUserInfo(LoginMgr.myUserInfo);
  74. RenderAfterSave();
  75. }
  76. public void RenderAfterSave() {
  77. btnModify.interactable = true;
  78. btnSave.interactable = false;
  79. for (int i = 0; i < inputs.transform.childCount; i++)
  80. {
  81. InputField inputField = GetInputField(inputs.transform.GetChild(i));
  82. inputField.enabled = false;
  83. if (i == 0) {
  84. inputField.text = LoginMgr.myUserInfo.nickname;
  85. }
  86. else if (i == 1) {
  87. inputField.text = LoginMgr.myUserInfo.phone;
  88. }
  89. else if (i == 2) {
  90. inputField.text = LoginMgr.myUserInfo.gender;
  91. inputField.transform.parent.Find("ToggleGroup").gameObject.SetActive(false);
  92. }
  93. else if (i == 3) {
  94. inputField.text = LoginMgr.myUserInfo.birthday;
  95. }
  96. else if (i == 4) {
  97. inputField.text = LoginMgr.myUserInfo.national;
  98. }
  99. else if (i == 5) {
  100. inputField.text = LoginMgr.myUserInfo.region;
  101. }
  102. }
  103. nameText.text = LoginMgr.myUserInfo.nickname;
  104. HomeView.ins.RenderNameOrGender();
  105. }
  106. }