【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() 列表中,点击加号,添加回调函数!

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

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

相关推荐
天人合一peng2 小时前
unity 生成标记根据背景色标记变色
unity·游戏引擎
天人合一peng5 小时前
unity 生成标记根据背景色变色为明显的颜色
unity·游戏引擎
魔士于安6 小时前
Unity 超市总动员 超市收银台 超市货架 超市购物手推车 超市常见商品
游戏·unity·游戏引擎·贴图·模型
CandyU26 小时前
Unity —— 数据持久化
unity·游戏引擎
zh路西法6 小时前
【Unity实现Oneshot胶卷显形】游戏窗口化与Win32API的使用
游戏·unity·游戏引擎
凡情11 小时前
android隐私合规检测
android·unity
小贺儿开发11 小时前
Unity3D 本地 Stable Diffusion 文生图效果演示
人工智能·unity·stable diffusion·文生图·ai绘画·本地化
mxwin1 天前
Unity Shader 半透明物体为什么不能写入深度缓冲?
unity·游戏引擎·shader
晚枫歌F1 天前
三层时间轮的实现
网络·unity·游戏引擎
咸鱼永不翻身1 天前
Lua脚本事件检查工具
unity·lua·工具