¿Cómo obtener una imagen Drawable mediante su ruta en Android?

publicado por: Anonymous

Me refiero a retornar una variable Drawable que almacene una imagen pero cargarla mediante su ubicación en la carpeta /drawable donde se encuentre dentro del mismo proyecto.

Algo así:

Drawable imagen = getDrawable("imagen.png"); //Es ejemplo, esto no existe.

y después agregarla a un ImageView.

solución

Existen varias formas de obtener la imagen almacenada dentro de /drawable .

La forma más común (Usar ContextCompat, para evitar el método obsoleto getDrawable())

Drawable image  = ContextCompat.getDrawable(getApplicationContext(), R.drawable.androide);

también puedes usar el URI para obtener la ruta de la imagen dentro de /drawable:

 String uri = "@drawable/androide"; 
 int imageResource = getResources().getIdentifier(uri, null, getPackageName());
 Drawable imagen = ContextCompat.getDrawable(getApplicationContext(), imageResource);

Pero la opción más sencilla, simplemente usar setImageResource, definiendo el id del recurso.

imageView.setImageResource(R.drawable.androide);

Con las 3 opciones obtienes el mismo resultado.

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *