Estoy tratando de realizar una tarea muy simple (cargar la imagen en ImageView en segundo plano), pero no puedo hacer que funcione. Cualquier ayuda muy apreciada.
Esto es lo que tengo hasta ahora: Así es como llamo a la clase en crear en el hilo principal:
LoadImage newImage=new LoadImage();
newImage.execute(myImgeView);
A continuación creé la clase:
public class LoadImage extends AsyncTask<ImageView, Void, ImageView> {
ImageView imageView;
@Override
protected ImageView doInBackground(ImageView... params) {
Log.e("myTag",": Can it see this class from where I call it? Yes it does" );
imageView.setImageResource(R.drawable.myNewImage);
return imageView;
}
}
No sé cómo configurarlo correctamente. Se bloquea diciendo algo como: Intento de invocar el método virtual 'void android.widget.ImageView.setImageResource (int)' en una referencia de objeto nulo.
Gracias de antemano por tu ayuda.
El problema radica en este código:
imageView.setImageResource(R.drawable.myNewImage);
No variable
imageView
se puede ver desde la AsyncTask
clase, el imageView que desea está dentro de la params
matriz para que pueda hacer referencia a él params[0]
. Entonces reemplace el código anterior con:
ImageView imageView = params[0];
imageView.setImageResource(R.drawable.myNewImage);
return imageView;
Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.
En caso de infracción, por favor [email protected] Eliminar
Déjame decir algunas palabras