unityzgy/Assets/Scripts/UIScripts/Teacher/DaoHangPanel.cs
ayuan9957 bf12e02276 feat: 多语言本地化系统 - 支持中/英/法/俄实时切换
- LocalizationManager: 新增翻译表(SetFormatted/SetDuration/LocalizeOperateMsg)
- LoginPanel: InputField placeholder本地化、字体颜色保持
- HistoryPanel: 用时数据本地化、placeholder本地化
- RecordDetailPanel: 操作详情消息本地化(LanguageChanged重建)
- AppraiseWindowBase: 评价等级本地化、操作消息重建
- EditorAppraiser: 所有评估消息改用InjectOperateMsgLocalized
- StudentOperateRecorder: 新增InjectOperateMsgLocalized方法
- LocalizationLanguageTestBar: 单例模式、ScreenSpaceOverlay筛选
- 字体切换时保留颜色和verticalOverflow
2026-07-16 10:05:59 +08:00

87 lines
2.5 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using XFramework;
using UnityEngine.UI;
public class DaoHangPanel : BasePanel
{
const string panelName = "Panel_daohangManager";
readonly string[] managerButtonName = new string[]{ "用户管理", "数据管理" };
readonly string[] teacherButtonName = new string[] { "开始训练", "历史查询" };
UserType user;
Button upButton;
Text upButtonText;
Button downButton;
Text downButtonText;
public DaoHangPanel() : base(new UIType(panelName))
{
}
protected override void InitEvent()
{
upButton = ActivePanel.transform.Find("Button_up").GetComponent<Button>();
upButtonText = upButton.GetComponentInChildren<Text>();
upButton.onClick.AddListener(UpButtonClick);
downButton = ActivePanel.transform.Find("Button_down").GetComponent<Button>();
downButtonText = downButton.GetComponentInChildren<Text>();
downButton.onClick.AddListener(DownButtonClick);
ActivePanel.transform.Find("Button_return").GetComponent<Button>().onClick.AddListener(()=> { Pop();Push(new LoginPanel()); });
}
public override void Change(float newData)
{
user = (UserType)newData;
Debug.Log(user.ToString());
switch (user)
{
case UserType.Teacher:
upButtonText.text = LocalizationManager.Get(teacherButtonName[0]);
downButtonText.text = LocalizationManager.Get(teacherButtonName[1]);
break;
case UserType.manager:
upButtonText.text = LocalizationManager.Get(managerButtonName[0]);
downButtonText.text = LocalizationManager.Get(managerButtonName[1]);
break;
default:
break;
}
}
void UpButtonClick()
{
Pop();
switch (user)
{
case UserType.Teacher:
Push(new TeacherMainPanel());
break;
case UserType.manager:
Push(new UserManagerPanel());
break;
default:
break;
}
}
void DownButtonClick()
{
Pop();
switch (user)
{
case UserType.Teacher:
Push(new HistoryPanel());
break;
case UserType.manager:
Push(new ModelManagerPanel());
break;
default:
break;
}
}
}