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

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

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

相关推荐
垂葛酒肝汤1 天前
Unity的UI扫光效果Shader
ui·unity·游戏引擎
mxwin1 天前
Unity Shader Alpha测试 · 模板测试 · 深度测试
unity·游戏引擎
Sator11 天前
unity解决粒子与物体接触时的硬边缘问题
unity·游戏引擎
程序员JerrySUN1 天前
Jetson边缘嵌入式实战课程第三讲:L4T 与 Jetson 系统架构
linux·服务器·人工智能·安全·unity·系统架构·游戏引擎
萌萌的提莫队长2 天前
Unity HDRP 渲染管线 Camera 输出到RenderTexture没有Alpha通道
unity·游戏引擎
winlife_2 天前
Unity Editor 工具不该用反射写组件字段:SerializedObject 在 4 个场景里非用不可
unity·自动化·游戏引擎
星河耀银海2 天前
Unity C#入门:变量的定义与访问权限(public/private)
unity·c#·lucene
郝学胜-神的一滴2 天前
中级OpenGL教程 005:为球体&平面注入法线灵魂
c++·unity·图形渲染·three.js·opengl·unreal
那个村的李富贵2 天前
unity编辑器工具,输出使用的字体
unity·编辑器·游戏引擎
游乐码2 天前
UnityGUI(五)GUI控件综合使用
开发语言·unity·c#