Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Problema al cargar Sprite y asignar a Button.image

Iniciado por rogerdv, Agosto 04, 2015, 09:34:49 PM

Tema anterior - Siguiente tema
Estoy tratando de cargar una imagen en tiempo de ejecución para asignársela aun botón, pero me he encontrado un problema que no logro resolver. Aunque el Sprite es válido, el script produce un error:
var go = Instantiate(invGridPrefab);
var rt = go.GetComponent<RectTransform>();
rt.SetParent(inv.transform);
rt.anc***dPosition = new Vector2(40+40*col,70-row*40);
var b = go.GetComponent<Button>();
Sprite img = Resources.Load<Sprite>("Icons/great-sword");
if (img)
   Debug.Log("loaded image "+img.name);
b.image.sprite = img;      <---Error               
b.onClick.AddListener(() => MouseEnter(go));      
El error que da es de Null Reference Exception. Sin embargo, tanto el botón como el sprite existen.

http://dsgp.blogspot.com">Divagaciones sobre programación y juegos



Icons/great-sword es una carpeta que cuelga de la carpeta Resources?
 


Pruébalo así a ver
b.image.GetComponent<SpriteRenderer>().sprite = Resources.Load<Sprite>("Icons/great-sword");

Negativo, el error persiste. Por alguna razón la image se carga bien, pero no puede asignarse.

http://dsgp.blogspot.com">Divagaciones sobre programación y juegos



Etiquetas: