要改变按钮的图片,可以通过修改buttonImage.sprite属性来实现。修改后的代码如下:

using UnityEngine;
using UnityEngine.UI;

public class CircleButton : MonoBehaviour
{
    public bool isSolid = false;
    public static CircleButton selectedButton = null;

    private Image buttonImage;
    public Sprite solidSprite; // 实心样式的图片
    public Sprite normalSprite; // 正常样式的图片

    private void Start()
    {
        buttonImage = GetComponent<Image>();
    }

    public void OnButtonClick()
    {
        if (isSolid)
        {
            // 恢复原状
            isSolid = false;
            buttonImage.sprite = normalSprite;
            selectedButton = null;
        }
        else
        {
            // 切换为实心样式
            if (selectedButton != null)
            {
                selectedButton.isSolid = false;
                selectedButton.buttonImage.sprite = selectedButton.normalSprite;
            }

            isSolid = true;
            buttonImage.sprite = solidSprite;
            selectedButton = this;
        }
    }
}

这样,在CircleButton脚本中添加了两个公共Sprite类型的变量solidSprite和normalSprite,分别代表实心样式的图片和正常样式的图片。在OnButtonClick方法中,通过修改buttonImage.sprite属性来改变按钮的图片。当按钮被选中时,使用solidSprite作为按钮的图片;当按钮恢复原状时,使用normalSprite作为按钮的图片

using UnityEngine;using UnityEngineUI;public class CircleButton MonoBehaviour public bool isSolid = false; public static CircleButton selectedButton = null; private Image buttonImage; pri

原文地址: https://www.cveoy.top/t/topic/ilNL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录