Untiy UGUI ToggleGroup 多按钮互斥 只选中一个按钮并监听按钮点击方法

使用方法:

1.新建一个panel,挂上ToggleGroup组件和Tab组件

2.新建Toggle,看需要多少按钮就新建几个,Toggle里面的Chectmark换成想要点击选中之后的效果

3.获取Tab组件,在开始方法中注册监听事件,RankTab.AddSelectedListener(SelectRankType)

4.在监听事件中能根据toggleName识别点击的是哪个Toggle

private void SelectRankType(string toggleName,int index)
        {
            if(toggleName== "FullSeverRank")
            {
                //请求全服排行榜
                Debug.Log("点击全服排行榜");
                isFullRank = true;
            }
            else if(toggleName == "FriendsRank")
            {
                //请求好友排行榜
                Debug.Log("点击好友排行榜");
                isFullRank = false;
                GameEntry.HttpConnector.GetFriendsRank(RankInterfaceApi.UsetId,  friendsPage, limit, FriendsResponseCallback);
            }
            else
            {
                Debug.LogWarning("没有这个toogle");
            }
        }

Tab组件的代码:

using System;
using UnityEngine;
using System.Collections.Generic;
using UnityEngine.UI;
using UnityEngine.Events;
namespace ArrowLegend
{
    /// <summary>
    /// tabUI组件实现ToggleGroup效果
    /// </summary>
    [RequireComponent(typeof(ToggleGroup))]
    public class Tab : MonoBehaviour
    {
        
        private ToggleGroup toggleGroup;
        private List<Toggle> toggles;
        private Toggle currentSelectToggle;
        private int currentSelectToggleIndex;
        private List<Action<string, int>> selectedListener;
        private 
  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值