/**************************************************************************** * 2024.6 LXD ****************************************************************************/ using System; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using QFramework; namespace QFramework { public partial class LeveItem : UIElement { /// /// Index值 /// [HideInInspector] public int m_index; /// /// 设置时间 /// [HideInInspector] public string m_Time; /// /// 关卡名称 /// [HideInInspector] public string m_LevelName; #region UI状态 /// /// 选择状态 /// [HideInInspector] public bool m_SelectState; /// /// 时间图标的选中/取消颜色 /// [Header("时间图标的选中状态")] public Color m_SelectTimeIconColor; [Header("时间图标的取消状态")] public Color m_NormalTimeIconColor; /// /// 时间字体的选中/取消颜色 /// [Header("时间字体的选中状态")] public Color m_SelectTimeColor; [Header("时间字体的选中状态")] public Color m_NormalTimeColor; /// /// 关卡名称字体的选中/取消颜色 /// [Header("关卡名称字体的选中状态")] public Color m_SelectConentColor; [Header("关卡名称字体的取消状态")] public Color m_NormalConentColor; #endregion /// /// 子集第一个元素 /// public OperationStepDataInfo m_OperationStepDataInfo; void Start() { ClickBtn.onClick.AddListener(OnClickBtnClick); TimeInputField.onEndEdit.AddListener(OnTimeInputFildEndEditor); } /// /// 初始化 /// /// indexz /// /// public void InitData(int index, OperationStepDataInfo operationStepDataInfo) { m_OperationStepDataInfo = operationStepDataInfo; IdText.text = (index + 1).ToString(); m_index = index; m_LevelName = operationStepDataInfo.parentStepName; LeveConentText.text = m_LevelName; m_Time = m_LevelName; } public void OnClickBtnClick() { SetSelectState(!m_SelectState); UIKit.GetPanel().SetSelectState(m_index, m_SelectState); } public void SetSelectState(bool state) { SelectStateIcon.gameObject.SetActive(state); if (state) { TimeLogo.color = m_SelectTimeIconColor; LeveConentText.color = m_SelectConentColor; Placeholder.color = m_SelectTimeColor; Text.color = m_SelectTimeColor; } else { TimeLogo.color = m_NormalTimeIconColor; LeveConentText.color = m_NormalConentColor; Text.color = m_NormalTimeColor; Placeholder.color= m_NormalConentColor; } m_SelectState = state; } public void SetSelectedData(ChallengeConfiguration challengeConfiguration) { SetSelectState(true); TimeInputField.text = challengeConfiguration.LeveTime; } private void OnTimeInputFildEndEditor(string conent) { m_Time = conent; UIKit.GetPanel().RefreshTotalTime(); } } }