2025-09-08 17:37:12 +08:00

50 lines
1.4 KiB
C#

using System;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.UI;
using ZXKFramework;
namespace DongWuYiXue.DaoNiaoShu
{
public class ToggleSelectPanel : UIBase
{
public override string GroupName => "ToggleSelectPanel";
public override string Name => "ToggleSelectPanel";
Toggle[] toggles;
Button confirm;
public override void Init(IUIManager uictrl)
{
base.Init(uictrl);
toggles = GetComponentsInChildren<Toggle>(true);
confirm = transform.FindFirst<Button>("Confirm");
}
public void ToggleClick(int i,Action callBack)
{
toggles[i].onValueChanged.RemoveAllListeners();
toggles[i].onValueChanged.AddListener(args => {
callBack?.Invoke();
});
}
public bool ToggleIsOn()
{
for (int i = 0; i < toggles.Length; i++)
{
if (toggles[i].isOn)
{
return true;
}
}
return false;
}
public void Confirm(UnityAction callBack)
{
confirm.onClick.RemoveAllListeners();
confirm.onClick.AddListener(()=> {
if (!ToggleIsOn()) return;
SetActive(false);
callBack?.Invoke();
});
}
}
}