第一步:场景添加Canvas,Canvas下添加EmptyObject,EmptyObject下创建Toggles,脚本附给EmptyObject,脚本下Toggles元素分别选择EmptyObject下创建的Toggles;

第二步:分别为创建的Toggles添加On Value Changed(Boolean),第一个默认Runtime Only(根据需要选择),Object选择上面创建的EmptyObject,Function选CheckBoxSelect.boolean1;

(代码有个bug——当选中某个复选框但是又取消选择之后,取消选择的复选框仍在队列,因此的无法得到预想的效果)

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class CheckBoxSelect : MonoBehaviour
    public Toggle[] Toggles = new Toggle[3];
    private Queue<Toggle> queueT = new Queue<Toggle>();
    private Toggle tToggle;
    private int countT = 0;
    public void boolean1(bool value) { }
    private void Start()
        foreach (var ToggleItem in Toggles)
            ToggleItem.onValueChanged.AddListener(ifselect => { if (ifselect) OnToggleValueChanged(ToggleItem); });
    private void OnToggleValueChanged(Toggle Toggleitem)
        countT++;
        queueT.Enqueue(Toggleitem);
        if(countT > 2)
            queueT.Dequeue().isOn = false;
                                    因工作需要,unity自带的Toggle组件如满足自己的需求,使用比较复杂,咬牙自己封装一套,也提供给小伙伴们一同使用,如有任何可优化的地方,也烦请各位大佬友情提出,感恩的♥♥♥效果展示UI结构效果展示下载拖入工程中在要设置的按钮上添加Tab脚本根据添加后,Inspector上的提示,设置鼠标移入及点击时的设置TabTxt: 按钮下的textMultipleChoice:是否为复选框IsOn:当前是否为选中状态,手动勾选的话,初始化时为默认选中状态鼠标移入状态设置。