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

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

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

相关推荐
tealcwu1 小时前
【Unity踩坑】Unity项目提示文件合并有冲突
elasticsearch·unity·游戏引擎
tealcwu17 小时前
【Unity小技巧】如何将3D场景转换成2D场景
3d·unity·游戏引擎
鹿野素材屋20 小时前
Unity模型中人形角色的嘴巴一直开着怎么办
unity
世洋Blog1 天前
Unity面经-List底层原理、如何基于数组、如何扩容、List存储泛型、List有关在内存中的结构
unity·面试·c#·list
jtymyxmz2 天前
《Unity Shader》6.4.3 半兰伯特模型
unity·游戏引擎
我的golang之路果然有问题2 天前
mac配置 unity+vscode的坑
开发语言·笔记·vscode·macos·unity·游戏引擎
于小汐在咯2 天前
【虚拟现实技术】在Unity里创建一个简单的AR项目
unity·ar·vr
HahaGiver6662 天前
Unity Shader Graph 3D 实例 - 一个简单的红外线扫描全身效果
3d·unity·游戏引擎
雪下的新火3 天前
Blender:法线图&黑白图
游戏·unity·游戏引擎·blender·笔记分享
HahaGiver6663 天前
从0到1做一个“字母拼词”Unity小游戏(含源码/GIF)- 实现多单词顺序通关进度逻辑
unity·游戏引擎·游戏程序