UGUI Image图像控件替换图片

2024-01-09 15:00:13

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

Unity3d引擎版本:Uinty3d 20233.2.3f1

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

1、将图片导入unity。

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

脚本代码:

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<Texture2D>("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()
    {
        
    }
}

文章来源:https://blog.csdn.net/xingchengaiwei/article/details/135475029
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。