Unity按钮点击事件
Posted 木木娅.
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity按钮点击事件相关的知识,希望对你有一定的参考价值。
一.可视化创建及事件绑定
首先给要在Inspector面板点击最下面的Add Component搜索Button
添加Button组件
然后在编写一段脚本添加到任意的游戏对象
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Text : MonoBehaviour
/// <summary>
/// 开始按钮点击后调用此方法
/// </summary>
public void OnStartButtonClick()
Debug.Log("哈哈哈哈!看,你好像是个憨憨!!");
重点是:一定要是公开的public类型的方法!!
然后在button组件中找到箭头所指的
把挂载脚本的对象拖到 箭头指向的位置
然后 在箭头指向的位置
选择 我们刚刚的OnStartButtonClick()方法
运行之后点击按钮就完成了
二 .直接通过脚本绑定
创建一个脚本添加到任意游戏对象
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;//后面要使用一些UI(该处就是Button)组件,所以一定要添加该命名空间
public class Text : MonoBehaviour
private Button btn_Start;//定义一个Button类型的变量
private void Start()
btn_Start = GameObject.Find("btn_Start").GetComponent<Button>();//通过Find查找名称获得我们要的Button组件
btn_Start.onClick.AddListener(OnStartButtonClick);//监听点击事件
/// <summary>
/// 点击的之后调用的方法
/// </summary>
private void OnStartButtonClick()
Debug.Log("我是大聪明");
运行结果
unity基础交互入门(按钮点击事件的三种方法)
一、在按钮绑定事件
1、在资源面板创建C#脚本
2、创建点击事件需要执行的代码(这里以loadMain为例),新增一个叫OnStartButtonClick的Public方法。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class loadMain : MonoBehaviour
void Start()
void Update()
public void OnStartButtonClick()
Debug.Log("prefabName1");//只能运行时看到输出,可以换其他点击事件。
可以选择生成或者调试,从VS更新代码到Unity。
3、场景中创建Button和empty(生成空的GameObject)
4、将代码挂在刚刚的GameObject上(这里将GameObject重命名为loader),直接从资源窗口拖动到面板即可。
5、点击Button,找到面板的onclick(),选择刚刚的GameObject(即loader)
6、在右侧选择对应的方法。
二、直接通过脚本绑定事件
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;//Button组件的依赖
public class a : MonoBehaviour
private Button btn_Start;//定义一个Button类型的变量
// Start is called before the first frame update
void Start()
btn_Start = GameObject.Find("Button").GetComponent<Button>();//通过Find查找名称获得我们要的Button组件
btn_Start.onClick.AddListener(OnStartButtonClick);//监听点击事件
private void OnStartButtonClick()
Debug.Log("点击事件");
// Update is called once per frame
void Update()
三、脚本创建按钮绑定方法
void createBtn()
GameObject itemList = GameObject.Find("itemList");
for (int i = 0; i < itemArray.Length; i++)
GameObject itemButtonObj = new GameObject(itemArray[i].itemName);
itemButtonObj.transform.SetParent(itemList.transform, false);
/*itemButtonObj.transform.parent = itemList.transform;*/
Button itemButton = itemButtonObj.AddComponent<Button>();
Image img = itemButtonObj.AddComponent<Image>();
img.sprite = Resources.Load("Assets/Resources/Textures/A.png") as Sprite;
itemButton.GetComponent<Button>().onClick.AddListener(displayObj);
四、拓展阅读
以上是关于Unity按钮点击事件的主要内容,如果未能解决你的问题,请参考以下文章