using System; using System.Collections; using System.Collections.Generic; using System.Net; using System.Net.Http; using System.Net.Sockets; using System.Text; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; public class MainUI : UIBase { public Button quitBtn; public Transform peopleContent; List peopleList; private void Awake() { EventCenter.Instance.Init(); UIManager.Instance.Init(); NetMain.Instance.conn(); peopleList = new List(); quitBtn.onClick.AddListener(() => { Application.Quit(); }); EventCenter.dispatcher.AddListener(MsgType.OnGetPeopleInfo, ShowPeopleInfo); } private void ShowPeopleInfo(Message message) { var peoples = DataManager.Instance.peoples; GameObject Prefab = (GameObject)Resources.Load("UIPrefabs/PeopleInfo"); for (int i = 0; i < peoples.Count; i++) { UIPeopleInfoItem item = Instantiate(Prefab, peopleContent).GetComponent(); peopleList.Add(item); item.Init(peoples[i]); } } private void Start() { GetPeopleInfo(); } private void Update() { if (Input.GetKeyDown(KeyCode.Q)) { UIBase ui = UIManager.Instance.OpenUI(UIType.UIFile); UIFile file = (UIFile)ui; file.Init(FileType.URL); } if (Input.GetKeyDown(KeyCode.W)) { UIBase ui = UIManager.Instance.OpenUI(UIType.UIFile); UIFile file = (UIFile)ui; file.Init(FileType.text); } if (Input.GetKeyDown(KeyCode.E)) { UIBase ui = UIManager.Instance.OpenUI(UIType.UIFile); UIFile file = (UIFile)ui; file.Init(FileType.music); } if (Input.GetKeyDown(KeyCode.R)) { UIBase ui = UIManager.Instance.OpenUI(UIType.UIFile); UIFile file = (UIFile)ui; file.Init(FileType.video); } if (Input.GetKeyDown(KeyCode.T)) { UIBase ui = UIManager.Instance.OpenUI(UIType.UIFile); UIFile file = (UIFile)ui; file.Init(FileType.image, "https://s-sh-7897-jiayi-test.oss.dogecdn.com/physique/05329a95469146ca85c01cea53babc8a-girl.png"); } } private void OnDestroy() { EventCenter.dispatcher.RemoveListener(MsgType.OnGetPeopleInfo, ShowPeopleInfo); } public void GetPeopleInfo() { string url = "http://122.112.171.137:85/api/cases/base/list"; StartCoroutine(Get(url)); } IEnumerator Get(string url) { UnityWebRequest request = UnityWebRequest.Get(url); yield return request.SendWebRequest(); if (request.isHttpError || request.isNetworkError) { Debug.LogError(request.error); } else { string receiveContent = request.downloadHandler.text; byte[] datas = Encoding.UTF8.GetBytes(receiveContent); receiveContent = Encoding.UTF8.GetString(datas, 0, datas.Length); //JsonInfo jsonInfo = JsonMapper.ToObject(receiveContent); DataParse.Instance.ParsePeople(receiveContent); } } }