【UGUI】为Button 组件添加回调函数-也就是按钮控制一些行为

【UGUI】为Button 组件添加回调函数-也就是按钮控制一些行为

第一种:添加侦听事件-拿到Button-代码关联一个函数

cs 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TMPro;

public class UIcontrol : MonoBehaviour
{
    // 演示组件控制
    //1.拿到整个游戏物体 2.拿到组件 3.获取用选中的数值 
    GameObject ONEBTobj;//拿到按钮 !类的变量,类的实例化对象
    Button ButtonComp;//拿到按钮组件!类的变量,类的实例化对象
    public GameObject Image1;//拿到一个图片

    void Start()
    {
        
        Image1.SetActive(false);//游戏开始让图片关闭
        
        ButtonComp.onClick.AddListener(ClickButton);//为按钮添加一个关联的函数!-委托事件
    }
    public void ClickButton()
    {
        Debug.Log("点击按钮!开始游戏了");
        if (Image1.activeSelf)
        {
            Image1.SetActive(false);
        }
        else
        {
            Image1.SetActive(true);
        }
    }


}

第二种办法:自定义一个Public函数然后在组件属性中添加

首先在脚本任意创建一个公共函数

然后在外部挂在到按钮组件下面的Onclick() 列表中,点击加号,添加回调函数!

要想找到函数、需要找到脚本、要想找到脚本需要找到脚本所在的游戏物体!

因此把我们定义的公共函数所在的脚本所在游戏物体放进去!

相关推荐
tealcwu17 小时前
【Unity资源】Unity MCP 介绍
unity·游戏引擎
Thomas_YXQ21 小时前
Unity3D中提升AssetBundle加载速度的详细指南
java·spring boot·spring·unity·性能优化·游戏引擎·游戏开发
Miss_SQ1 天前
Unity接入AI—Deepseek,数据流式传输
unity·ai
chillxiaohan1 天前
unity 批量修改场景内字体工具
unity
ellis19702 天前
Unity中ScriptableObject用法整理
unity
玉梅小洋2 天前
Unity Muse 完整使用文档:Sprite+Texture专项
unity·ai·游戏引擎
能源革命2 天前
Three.js、Unity、Cesium对比分析
开发语言·javascript·unity
timathy333 天前
Unity Addressable 实现Build时自定义剔除资源组
unity·游戏引擎
一种时光4 天前
Unity 获取当前播放的动画,判断是否是某个动画
unity·游戏引擎
不绝1914 天前
Unity入门 :场景叠加/预制体资源包/脚本资源/生命周期函数/Inspector页面
unity·游戏引擎