public Texture2D texture; //纹理
private Image img; //目标图片
private RectTransform rectTransform;
void Start()
{
rectTransform = GetComponent<RectTransform>();
img = GetComponent<Image>();
SetImg();
}
void SetImg()
{
float imgHeight = rectTransform.rect.height;
float spriteWidth = (imgHeight * texture.width) / texture.height;
float spriteHeight = imgHeight;
Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new Vector2(0, 0));
img.sprite = sprite;
rectTransform.sizeDelta = new Vector2(spriteWidth, spriteHeight);
}
Unity 适应image高度显示纹理
最新推荐文章于 2025-05-11 12:04:56 发布