UGUI Image图像控件替换图片

代码为探索而来,不是最优代码,请按需使用。

Unity3d引擎版本:Uinty3d 20233.2.3f1

补充一下图片如何改成Texture2D:

1、将图片导入unity。

2、选择图片,按下图操作,点击应用即可。

UGUI Image图像控件替换图片_第1张图片

脚本代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
public class ImgVolumeScrpt : MonoBehaviour,IPointerClickHandler
{
    //Texture2D texture_CPR_btn_Sound_Open = Resources.Load("Images/CPR_btn_Sound_Open");

    public Texture2D texture_btn_Sound_Open;
    public Texture2D texture_btn_Sound_Off;
    private bool isOpen = true;

    public void OnPointerClick(PointerEventData eventData)
    {
        UnityEngine.UI.Image img =this.GetComponent("Image") as UnityEngine.UI.Image;
        if(!isOpen)
        {
            Sprite sprite = Sprite.Create(texture_btn_Sound_Open, new Rect(0, 0, texture_btn_Sound_Open.width, texture_btn_Sound_Open.height), new Vector2(1.0f, 1.0f));
            img.sprite = sprite;
        }
        else
        {
            Sprite sprite = Sprite.Create(texture_btn_Sound_Off, new Rect(0, 0, texture_btn_Sound_Off.width, texture_btn_Sound_Off.height), new Vector2(1.0f, 1.0f));
            img.sprite = sprite;
        }
        isOpen = !isOpen;
    }

    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        
    }
}

你可能感兴趣的:(unity3d,unity)