1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- using SimpleJSON;
- using System;
- using System.Collections.Generic;
- using System.Reflection;
- using TMPro;
- using UnityEngine;
- using UnityEngine.UI;
- using WS;
- public class MainMenuController : Controller<MainMenuView, MainMenuModel>
- {
- List<string> courses = new List<string>
- {
- "中药检索","中药学古文献","药物化学","药物化学","药物化学","药物化学"
- };
- protected override void BindingViewModel()
- {
- refreshCourseList();
- ToggleGroupAddListener();
- }
- public override void OpenView()
- {
- base.OpenView();
- }
- void refreshCourseList()
- {
- ReferenceCollector[] rcArray = _View.group.GetComponentsInChildren<ReferenceCollector>();
- for (int i = 0; i < rcArray.Length; i++)
- {
- rcArray[i].GetComponent<TextMeshProUGUI>("Index").text = i.ToString();
- rcArray[i].GetComponent<TextMeshProUGUI>("CourseName").text = courses[i];
- }
- }
- void ToggleGroupAddListener()
- {
- Toggle[] toggles = _View.group.GetComponentsInChildren<Toggle>();
- for (int i = 0; i < toggles.Length; i++)
- {
- var index = i;
- var rc = toggles[index].GetComponent<ReferenceCollector>();
- rc.GetComponent<Button>("EnterBtn").onClick.AddListener(OnEnterBtnClick);
- toggles[index].onValueChanged.AddListener((isOn) =>
- {
- Color color;
- ColorUtility.TryParseHtmlString("#FFDC63",out color);
- rc.GetComponent<TextMeshProUGUI>("Index").color=isOn?color:Color.black;
- rc.GetComponent<TextMeshProUGUI>("CourseName").color = isOn ? color : Color.black;
- rc.Get<GameObject>("EnterBtn").SetActive(isOn);
- toggles[index].GetComponent<Canvas>().sortingOrder = isOn?1001:1000;
- });
- }
- toggles[0].isOn = true;
- }
- void OnEnterBtnClick()
- {
- SearchTypeEntryController controller = FacadeComponent.Instance.CreateController<SearchTypeEntryController>();
- controller.OpenView();
- }
- }
- public class MainMenuView : View
- {
- public Transform group;
- public Button nextPageBtn;
- public Button lastPageBtn;
- List<string> courses = new List<string>
- {
- "中药检索","中药学古文献","药物化学","药物化学","药物化学"
- };
- public override void LoadInit()
- {
- var rc = UIGameObject.GetComponent<ReferenceCollector>();
- group = rc.GetComponent<Transform>("CourseList");
- nextPageBtn = rc.GetComponent<Button>("NextPageBtn");
- lastPageBtn = rc.GetComponent<Button>("LastPageBtn");
- }
- public void InitCourseList()
- {
- //var choiceItemPre = Resources.Load<GameObject>("UI/Common/Course");
- //for (int i = 0; i < courses.Count; i++)
- //{
- // var choiceItem = GameObject.Instantiate(choiceItemPre, group);
- // var rc = choiceItem.GetComponent<ReferenceCollector>();
- // TextMeshProUGUI courseName = rc.GetComponent<TextMeshProUGUI>("CourseName_Normal");
- // courseName.text = courses[i];
- // Toggle toggle = choiceItem.GetComponent<Toggle>();
- // toggle.group = group.GetComponent<ToggleGroup>();
- //}
- }
- }
- public class MainMenuModel : Model
- {
- public override void InitProperty()
- {
- }
- }
|