Button按钮

Button按钮是UGUI中十分常用的控件,其功能也十分简单,点击按钮就会有相应的按下显示效果,同时触发一个回调函数。

Button控件的结构和属性

Button控件是一个复合结构的游戏对象,默认创建的Button控件对象结构如下:

显示效果如图:

其中,Button对象上包含了Image组件,其中包含了按钮的背景图片;Text对象则是一个文本控件,其中包含了按钮的文字。如果我们的按钮没有文字,是一个纯的图片按钮,将Text直接删除也是没问题的。

Button组件包含的字段如图,其中Target Graphic为按钮的图像,按钮按下、选中等具有相应的效果,这些效果会叠加显示到这个目标图像上。此外,我们还可以指定按钮点击的回调事件。

按钮事件回调

下面例子中,我们编写了一个按钮点击的回调函数,点击按钮时会在控制台上打印相应的调试信息。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ButtonDemo : MonoBehaviour
{
    public void HandleButtonClick()
    {
        Debug.Log("按钮被点击了");
    }
}

实际上,我们也可以使用C#代码为按钮绑定回调函数,这种情况适用于动态生成的按钮等情况,下面代码是一个简单的例子。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class ButtonDemo : MonoBehaviour
{
    public Button button;

    private void Awake()
    {
        button.onClick.AddListener(HandleButtonClick);
    }

    public void HandleButtonClick()
    {
        Debug.Log("按钮被点击了");
    }
}
作者:Gacfox
版权声明:本网站为非盈利性质,文章如非特殊说明均为原创,版权遵循知识共享协议CC BY-NC-ND 4.0进行授权,转载必须署名,禁止用于商业目的或演绎修改后转载。
Copyright © 2017-2024 Gacfox All Rights Reserved.
Build with NextJS | Sitemap