You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
2.9 KiB
94 lines
2.9 KiB
3 years ago
|
using UnityEngine;
|
||
|
using System.Collections;
|
||
|
using UnityEngine.UI;
|
||
|
using System.IO;
|
||
|
using System;
|
||
|
using AX.MessageSystem;
|
||
|
|
||
|
public abstract class BaseSubItemManager : MonoBehaviour {
|
||
|
|
||
|
protected Text QuestionNameText;
|
||
|
[HideInInspector]
|
||
|
public Toggle QuestionToggle;
|
||
|
protected QuestionInfo question;
|
||
|
|
||
|
public QuestionInfo Question
|
||
|
{
|
||
|
set
|
||
|
{
|
||
|
question = value;
|
||
|
QuestionNameText.text = question.Name;
|
||
|
QuestionToggle.group = transform.parent.GetComponent<ToggleGroup>();
|
||
|
|
||
|
}
|
||
|
get
|
||
|
{
|
||
|
return question;
|
||
|
}
|
||
|
}
|
||
|
void Awake()
|
||
|
{
|
||
|
QuestionNameText = transform.Find("Name").GetComponent<Text>();
|
||
|
QuestionToggle = transform.Find("Toggle").GetComponent<Toggle>();
|
||
|
|
||
|
//transform.GetComponentInParent<ExamItemManager>();
|
||
|
ButtonInit();
|
||
|
MessageDispatcher.AddListener("ToggleFalse", ToggleFalse);
|
||
|
MessageDispatcher.AddListener("ToggleTrue", ToggleTrue);
|
||
|
}
|
||
|
|
||
|
private void ToggleTrue(IMessage message)
|
||
|
{
|
||
|
var manager = transform.parent.parent.parent.parent.parent.GetComponent<BaseItemManager>();
|
||
|
if (manager.Exam.ID == (long)message.Sender && question.ID == (long)message.Data)
|
||
|
{
|
||
|
QuestionToggle.isOn = true;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
void OnDestroy()
|
||
|
{
|
||
|
MessageDispatcher.RemoveListener("ToggleFalse", ToggleFalse);
|
||
|
MessageDispatcher.RemoveListener("ToggleTrue", ToggleTrue);
|
||
|
}
|
||
|
|
||
|
private void ToggleFalse(IMessage message)
|
||
|
{
|
||
|
var manager = transform.parent.parent.parent.parent.parent.GetComponent<BaseItemManager>();
|
||
|
if (manager.Exam.ID == (long)message.Sender && question.ID == (long)message.Data)
|
||
|
{
|
||
|
QuestionToggle.isOn = true;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
QuestionToggle.isOn = false;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public abstract void ButtonInit();
|
||
|
|
||
|
public void OnToggleChange()
|
||
|
{
|
||
|
var manager = transform.parent.parent.parent.parent.parent.GetComponent<BaseItemManager>();
|
||
|
if (GameObject.Find("Canvas").transform.Find("时间轴") && GameObject.Find("Canvas").transform.Find("时间轴").gameObject.activeInHierarchy
|
||
|
&& ExamInfoHelpClass.loadSceneMode== ExamInfoHelpClass.LoadSceneMode.MakeScore)
|
||
|
{
|
||
|
manager.CurSelectedTrans.GetComponent<BaseSubItemManager>().QuestionToggle.isOn = true;
|
||
|
MessageDispatcher.SendMessage("Operatinghints", (object)"请先选择保存或者丢弃当前评分");
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
if (QuestionToggle.isOn)
|
||
|
{
|
||
|
MessageDispatcher.SendMessage(manager.Exam.ID, "ToggleFalse", (object)question.ID);
|
||
|
//当前选中的项
|
||
|
Debug.Log(question.Name);
|
||
|
manager.Question = question;
|
||
|
manager.CurSelectedTrans = transform;
|
||
|
}
|
||
|
CheckIfHasAnswer();
|
||
|
}
|
||
|
public abstract void CheckIfHasAnswer();
|
||
|
|
||
|
}
|