12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- using System;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.UI;
- namespace VRPlatform
- {
- public class MainUI : MonoBehaviour
- {
- private int _currentNavIndex = 0;
- [SerializeField]
- private Text _titleText;
-
- // 导航栏
- [SerializeField]
- private List<Button> _navButtons = new List<Button>();
-
- // 内容UI
- [SerializeField]
- private List<ContentUI> _contentUIs = new List<ContentUI>();
- private void Awake()
- {
- for (int i = 0; i < _navButtons.Count; i++)
- {
- int index = i;
- _navButtons[i].onClick.AddListener(() =>
- {
- _titleText.text = _navButtons[index].GetComponentInChildren<Text>().text;
- OnNavButtonClick(index);
- });
- }
- }
- private void OnNavButtonClick(int index)
- {
- if (_currentNavIndex == index)
- {
- return;
- }
-
- _contentUIs[_currentNavIndex].gameObject.SetActive(false);
- _currentNavIndex = index;
- _contentUIs[_currentNavIndex].gameObject.SetActive(true);
- _contentUIs[_currentNavIndex].Refresh();
- }
- }
- }
|