unity Button按钮点击时改变按钮图片样式

两种改变按钮图片的方法

按钮原来是

 点击的时候,希望它变成

 这里也可以变成其他图片,不光是改变颜色

一、点击时改变图片(点击其他物体时会改回去)

添加Button后,改变设置

我们要把这个红色的改成 SpriteSwap

把自己喜欢的图片拖到红色箭头指的那一行,拖进去之后,你点击按钮的时候会直接改变按钮图片样式哦~~~

 其他的地方,你们也可以自己拖图片试一下,总之就是不同情况下改变图片

二、点击后永久改变图片样式(这个永久指的你不自己改回来)

这个是评论区有问,所以加的。

1.先做一个按钮

 2.准备一个你想换的图片,并把它改成精灵模式

3.开始写代码

 先把刚刚准备好要替换的图片放到代码里。

    [SerializeField] Sprite sprite;

 把按钮也加在这个代码里。

    [SerializeField] Sprite sprite;
    [SerializeField] Transform button0;

 现在要添加代码,当点击按钮的时候,把按钮的图片换成图片1。

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

public class ChangeButton : MonoBehaviour
{
    [SerializeField] Sprite sprite;
    //注意这里我声明的是Transform
    [SerializeField] Transform button0;
    
    void Start()
    {
        //我需要在Button组件里面加,所以用GetComponent<Button>()
        //当点击时(onClick)
        //因为我一直要看着,有没有点击,所以加方法叫,监听时(AddListener)
        //最后加入方法ButtonDown
        button0.GetComponent<Button>().onClick.AddListener(ButtonDown);
    }

    void ButtonDown() {
        //我需要改的是图片,所以我需要先获取组件Image,所以用GetComponent<Image>()
        //我需要Image组件里的图片,所以用sprite
        //等号后面的sprite是我第一行加的图片1
        button0.GetComponent<Image>().sprite = sprite;
    }
}

 4.成果展示

猜你喜欢

转载自blog.csdn.net/weixin_49427945/article/details/126832786