WaiXie_QuestionSystem/Assets/Script/UI/Panel/SummaryPanel.cs

75 lines
2.3 KiB
C#
Raw Normal View History

2023-12-10 12:28:20 +08:00
using System.Text;
using UnityEngine;
using UnityEngine.Serialization;
using UnityEngine.UI;
namespace Script.UI
{
public class SummaryPanel : PanelBase
{
[SerializeField] private Text txt_Score;
[SerializeField] private Text txt_True;
[SerializeField] private Text txt_False;
[SerializeField] private Text txt_Null;
[SerializeField] private Text txt_Accuracy;
[SerializeField] private Text txt_Time;
[SerializeField] private Button btn_Close;
public override void Init()
{
base.Init();
btn_Close.onClick.AddListener(ClickClose);
}
public override void Dispose()
{
base.Dispose();
btn_Close.onClick.RemoveListener(ClickClose);
}
public override void Open()
{
base.Open();
}
public override void ResetPanelData()
{
base.ResetPanelData();
UIManager.Instance.ClosePanel(PanelType.Answering);
UIManager.Instance.ClosePanel(PanelType.Tips);
SaveData();
}
private void ClickClose()
{
UIManager.Instance.OpenPanel(PanelType.Home);
Close();
}
private void SaveData()
{
var info = GlobalManager.Instance.summaryInfo;
txt_Score.text = info.score.ToString();
txt_True.text = info.trueCount.ToString();
txt_False.text = info.falseCount.ToString();
txt_Null.text = info.nullCount.ToString();
txt_Accuracy.text = info.accuracy;
txt_Time.text = info.time.ToCustomString();
StringBuilder sb = new StringBuilder();
sb.AppendLine($"选手ID{info.id}");
sb.AppendLine($"赛项:{info.title}");
sb.AppendLine($"科目:{info.subject}");
sb.AppendLine($"分数:{txt_Score.text}");
sb.AppendLine($"正确数量:{txt_True.text}");
sb.AppendLine($"答错数量:{txt_False.text}");
sb.AppendLine($"未答数量:{txt_Null.text}");
sb.AppendLine($"正确率:{txt_Accuracy.text}");
sb.AppendLine($"用时:{txt_Time.text}");
FileManager.Instance.SavePlayerData(sb.ToString());
}
}
}