

Unity UGUI的Button组件的介绍及使用 - AlianBlank
source link: https://www.cnblogs.com/alianblank/p/17645184.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

UGUI的Button(按钮)组件的介绍及使用
1. 什么是UGUI的Button组件?
UGUI(Unity GUI)是Unity引擎中的一套用户界面系统,Button(按钮)是其中的一个常用组件。Button组件可以用于创建可交互的按钮,用户点击按钮时可以触发相应的事件。
2. Button组件工的作原理
Button组件通过检测用户的点击事件来触发相应的操作。当用户点击按钮时,Button组件会检测到点击事件,并执行相应的操作,如比调用指定的函数或改变按钮的状态。
3. Button组件的常用属性
- Interactable(可交互):设置按钮是否可交互。如果设置为false,按钮将无法被点击。
- Transition(过渡效果):设置按钮的过渡效果,包括颜色、缩放、透明度等。
- Normal Color(正常状态颜色):设置按钮在正常状态下的颜色。
- Highlighted Color高(亮状态颜色):设置按钮在高亮状态下的颜色。
- Pressed Color(按下状态颜色):设置按钮在按下状态下的颜色。
- Disabled Color(禁用状态颜色):设置按钮在禁用状态下的颜色。
4. Button组件的常用函数
- onClick.AddListener():为按钮添加点击事件的监听器。
- onClick.Remove()Listener:移除按钮的点击事件监听器。
- onClick.Invoke():手动触发按钮的点击事件。
5. 示例代码
示例1:创建一个简单的按钮
using UnityEngine;
using UnityEngine.UI;
public class ButtonExample : MonoBehaviour
{
public Button button;
void Start()
{
button.onClick.AddListener(OnClick);
}
void OnClick()
{
Debug.Log("Button clicked!");
}
}
操作步骤:
- 创建一个空物体,并将脚本
ButtonExample
挂载到该物体上。 - 在场景中创建一个按钮,并将该按钮的引用赋值给
button
变量。 - 运行游戏,点击按钮,控制台将输出"Button clicked!"。
注意事项:
- 确保按钮的
OnClick
事件已经绑定到ButtonExample
脚本的OnClick
函数。
示例2:改变按钮的颜色
using UnityEngine;
using UnityEngine.UI;
public class ButtonExample : MonoBehaviour
{
public Button button;
void Start()
{
button.onClick.AddListener(OnClick);
}
void OnClick()
{
button.image.color = Color.red;
}
}
操作步骤:
- 创建一个空物体,并将脚本
ButtonExample
挂载到该体物上。 - 在场景中创建一个按钮,并将该按钮的引用赋值给
button
变量。 - 运行游戏,点击按钮,按钮的颜色将变为红色。
注意事项:
- 确保按钮的
OnClick
事件已经绑定到ButtonExample
脚本的OnClick
函数。
示例3:禁用按钮
using UnityEngine;
using UnityEngine.UI;
public class ButtonExample : MonoBehaviour
{
public Button button;
void Start()
{
button.onClick.AddListener(OnClick);
}
void OnClick()
{
button.interactable = false;
}
}
操作步骤:
- 创建一个空物体,并将脚本
ButtonExample
挂载到该物体上。 - 在场景中创建一个按钮,并将该按钮的引用赋值给
button
变量。 - 运行游戏,点击按钮,按钮将变为不可交互状态。
注意事项:
- 确保按钮的
OnClick
事件已经绑定到ButtonExample
脚本的OnClick
函数。
示例4:移除按钮的点击事件监听器
using UnityEngine;
using UnityEngine.UI;
public class ButtonExample : MonoBehaviour
{
public Button button;
void Start()
{
button.onClick.AddListener(OnClick);
}
void OnClick()
{
button.onClick.RemoveListener(OnClick);
}
}
操作步骤:
1.空一个 创建物体,并将脚本ButtonExample
挂载到该物体上。
2. 在场景中创建一个按钮,并将该按钮的引用赋值给button
变量。
3. 运行游戏,点击按钮,按钮的点击事件监听器将被移除。
注意事项:
- 确保按钮的
OnClick
事件已经绑定到ButtonExample
脚本的OnClick
函数。
示例5:手动触发按钮的点击事件
using UnityEngine;
using UnityEngine.UI;
public class ButtonExample : MonoBehaviour
{
public Button button;
void Start()
{
button.onClick.AddListener(OnClick);
}
void Update()
{
if (Input.GetKeyDown(KeyCode.Space))
{
button.onClick.Invoke();
}
}
void OnClick()
{
Debug.Log("Button clicked!");
}
}
操作步骤:
- 创建一个空物体,并将脚本
ButtonExample
挂载到该物体上。 - 在场景中创建一个按钮,并将该按钮的引用赋值给
button
变量。 - 运行游戏,按空下格键,控制台将输出"Button clicked!"。
注意事项:
- 确保按钮的
OnClick
事件已经绑定到ButtonExample
脚本的OnClick
函数。
Recommend
-
12
2018-03-03 • UGUI中几种不规则按钮的实现方式 UGUI中的按钮默认是矩形的,若要实现非矩形按钮该怎么做呢?比如这样的按钮:
-
11
UGUI研究院之UI粒子特效自适应缩放(二十二) 雨松MOMO
-
3
Unity中的PostProcessScene:深入解析与实用案例 在Unity游戏开发中,我们经常需要对场景进行后处理,以实现更丰富的视觉效果。Unity提供了一个名为PostProcessScene...
-
7
Unity UGUI的RawImage(原始图片)组件的介绍及使用 1. 什么是RawImage组件? RawImage是Unity UGUI中的一个组件,用于显示原始图片。与Image组件不同,RawImage可...
-
7
Unity UGUI的Outline(描边)组件的介绍及使用 1. 什么是Outline(描边)组件? Outline(描边)组件是Unity UGUI中的一种特效组件,用于给UI元素添加描边效果。通过设置描...
-
9
Unity IPreprocessComputeShaders Unity IPreprocessComputeShaders是Unity引擎中的一个非常有用的功能,它可以让开发者编译Compute Shader时自定义哪些操作需要被执行。这个可以帮助开...
-
7
UnityStats 属性详解 UnityStats 是 Unity 引擎提供的一个用于监测游戏性能的工具,它提供了一系列的属性值,可以帮助开发者解游戏的运行情况,从而进行优化。本文将详细介绍 UnityStats 的每个属性...
-
3
UGUI的Image(图片)组件的介绍及使用 1. 什么是UGUI的Image(图片)组件? UGUI的Image(图片)组件是Unity引擎中的一种UI组件,用于显示2D图像。它提供了一种简单而灵活...
-
5
Unity UGUI的Dropdown(下拉菜单)组件的介绍及使用 1. 什么是Dropdown组件? Dropdown(下拉菜单)是Unity UGUI中的一个常用组件,用于在用户点击或选择时显示一个...
-
4
Unity UGUI开发,0GC更新视图 【USparkle专栏】如果你深怀绝技,爱“搞点研究”,乐于分享也博采众长,我们期待你的加入,让智慧的火花碰撞交织,让知识的传递...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK