ND_SimulationAutomaticControl/Assets/Scripts/UI/UIPanel/UI_TopTitlePanel.cs

147 lines
4.5 KiB
C#

using TMPro;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
public class UI_TopTitlePanel : BasePanel
{
public Button AskBtn; //问答按钮
public Button ReturnBtn; //返回按钮
public Button ExitBtn; //退出按钮
public TextMeshProUGUI NameText; //用户名
public UI_TeacherStudentPanel UI_TeacherStudentPanel; //问答面板
public UI_TeacherAnswer TeacherAnswerObj;//老师回答生成面板
public Button DataBtn; //数据面板按钮
protected override void Awake()
{
base.Awake();
OnInit();
}
public void OnInit()
{
AskBtn = GetControl<Button>("问答按钮");
NameText = GetControl<TextMeshProUGUI>("用户名");
ReturnBtn = GetControl<Button>("返回");
ExitBtn = GetControl<Button>("退出");
DataBtn = GetControl<Button>("数据按钮");
}
public override void ShowMe()
{
base.ShowMe();
Scene currentScene = SceneManager.GetActiveScene();
if (currentScene.name == "xianchang")
{
AskBtn.gameObject.SetActive(true);
ReturnBtn.gameObject.SetActive(true);
DataBtn.gameObject.SetActive(true);
NameText.text = LoginManager.Instance.loginRespons.data.login_name;
}
else if (currentScene.name == "ChooesSubjectScene")
{
AskBtn.gameObject.SetActive(false);
ReturnBtn.gameObject.SetActive(false);
DataBtn.gameObject.SetActive(false);
}
}
public override void HideMe()
{
base.HideMe();
}
protected override void OnClick(string btnPath)
{
base.OnClick(btnPath);
switch (btnPath)
{
case "问答按钮":
Bootstrap.Instance.uiManager.ShowPanel<UI_TeacherStudentPanel>(this, E_UI_Layer.Top,
(panel) =>
{
Debug.Log("问答面板显示");
GameObject Player = GameObject.FindGameObjectWithTag("Player");
Player.GetComponent<FirstPersonController>().enabled = false;
panel.Answer1();
});
//UI_TeacherStudentPanel.Answer();
//UI_TeacherStudentPanel.Answer();
break;
case "返回":
ReturnScene();
break;
case "数据按钮":
Bootstrap.Instance.uiManager.ShowPanel<UI_LineChartPanel>(this, E_UI_Layer.Top,
(panel) =>
{
Debug.Log("数据显示");
});
break;
case "退出":
QuitGame();
break;
default:
break;
}
}
/// <summary>
/// 返回按钮
/// </summary>
public void ReturnScene()
{
Scene currentScene = SceneManager.GetActiveScene();
switch (currentScene.name)
{
case "xianchang":
Bootstrap.Instance.scenesManager.LoadSceneAsyn(this, "ChooesSubjectScene", () =>
{
Bootstrap.Instance.uiManager.ShowPanel<UI_ChooesPanel>(this, E_UI_Layer.Mid, (panel) =>
{
Bootstrap.Instance.uiManager.ShowPanel<UI_TopTitlePanel>(this, E_UI_Layer.Top, (panel) =>
{
Bootstrap.Instance.uiManager.HidePanel<UI_LoginPanel>();
Debug.Log("场景加载成功");
});
});
}
);
break;
case "ChooesSubjectScene":
break;
}
}
/// <summary>
/// 老师回复
/// </summary>
//public void Answer()
//{
// TeaAnswerManager.Instance.Answer();
// var TeacherAnswer = Instantiate(TeacherAnswerObj, UI_TeacherStudentPanel.ContentTrans);
// TeacherAnswer.Init(TeaAnswerManager.Instance.answerRoot.DataAnswer.HandlerName,
// TeaAnswerManager.Instance.answerRoot.DataAnswer.ApplicantName,
// TeaAnswerManager.Instance.answerRoot.DataAnswer.DealDsc);//回复人,提问人,回复内容
//}
/// <summary>
/// 退出应用
/// </summary>
public void QuitGame()
{
// 根据不同的运行环境执行不同的退出逻辑
#if UNITY_EDITOR
// 编辑器环境下,退出运行模式
UnityEditor.EditorApplication.isPlaying = false;
Debug.Log("编辑器运行模式已停止。");
#else
// 打包后的环境下,退出应用程序
Application.Quit();
#endif
}
}