using System.Collections; using System.Collections.Generic; using System.Linq; using TMPro; using UnityEngine; using UnityEngine.UI; public class XingJunDaoHangPage : UIPageBtnEventBase { public List myPages = new List(); public List maps=new List(); public KeyboardScrollView keyboardScrollView; public CustomTMPInputField 编号; public CustomTMPInputField 阵地X; public CustomTMPInputField 阵地Y; public CustomTMPInputField 阵地H; public CustomTMPDropdown 类型; public GameObject itemPrefab; public Transform itemParent; public List items = new List(); private void OnEnable() { enter181 = FindObjectOfType(); for (int i = 0; i < myPages.Count; i++) { myPages[i].SetActive(false); } myPages[0].SetActive(true); currentIndex = 0; } public void ChangeItem(int index) { for (int i = 0; i < items.Count; i++) { items[i].SetActive(false); } items[index].SetActive(true); } public override void OnF1Click() { base.OnF1Click(); if (myPages[2].activeInHierarchy) { if (!myPages[2].transform.GetChild(1).gameObject.activeInHierarchy) myPages[2].transform.GetChild(1).gameObject.SetActive(true); else { myPages[2].transform.GetChild(1).gameObject.SetActive(false); //设置后需要更换界面 myPages[2].transform.GetChild(0).GetChild(0).GetComponent().sprite = maps[keyboardScrollView.currentIndex]; } } } public override void OnF2Click() { base.OnF2Click(); if (currentIndex == 1) { if (阵地X.text != "" && 阵地Y.text != "" && 阵地H.text != "") { GameObject it = Instantiate(itemPrefab, itemParent); it.transform.GetChild(0).GetComponent().text = 编号.text; it.transform.GetChild(1).GetComponent().text = 阵地X.text; it.transform.GetChild(2).GetComponent().text = 阵地Y.text; it.transform.GetChild(3).GetComponent().text = 阵地H.text; it.transform.GetChild(4).GetComponent().text = 类型.options[类型.value].text; } } } public override void OnF3Click() { base.OnF3Click(); //F3是上一页 Previous(); } public override void OnF4Click() { base.OnF4Click(); Next(); } public override void OnF5Click() { base.OnF5Click(); enter181.OnShow(); ResetPage(myPages); //gameObject.SetActive(false); Destroy(gameObject); } private int currentIndex = 0; /// /// 切换到下一个元素 /// public void Next() { if (myPages == null || myPages.Count == 0) return; // 如果是最后一个元素,则不进行操作 if (currentIndex >= myPages.Count - 1) return; // 隐藏当前元素 if (myPages[currentIndex] != null) myPages[currentIndex].SetActive(false); currentIndex++; // 显示下一个元素 if (myPages[currentIndex] != null) myPages[currentIndex].SetActive(true); } /// /// 切换到上一个元素 /// public void Previous() { if (myPages == null || myPages.Count == 0) return; // 如果是第一个元素,则不进行操作 if (currentIndex <= 0) return; // 隐藏当前元素 if (myPages[currentIndex] != null) myPages[currentIndex].SetActive(false); currentIndex--; // 显示上一个元素 if (myPages[currentIndex] != null) myPages[currentIndex].SetActive(true); } public Enter181Page enter181; void ResetPage(List targets) { DeactivateAllObjects(myPages); } public void DeactivateAllObjects(List targetObjects) { foreach (var obj in targetObjects.Where(obj => obj != null)) { obj.SetActive(false); //foreach (Transform child in obj.transform) //{ // child.gameObject.SetActive(false); //} } } }