Pregunta

Necesito almacenar el enlace a la imagen que el usuario ha elegido.Las fuentes de las imágenes son archivos, íconos de contacto y elementos de diseño de recursos (necesito elementos de diseño ya que proporciono diferentes imágenes para diferentes resoluciones/densidades).Para fines de unificación, lo almaceno en URI y, en consecuencia, este URI puede estar apuntando a un archivo (file://), a proveedor de contenido o para recurso (android.resource://...).Así es como se ve el URI que apunta al elemento dibujable con id=2130837534:

android.resource://my.packagename/2130837534

Funciona bien a menos que los identificadores en R.java son regenerados.Entonces, ¿hay alguna manera de evitar que el SDK cambie algunas de las R.java valores de identificación?

¿Fue útil?

Solución

No, no puedes ni deberías.Si puede describir su problema claramente, es posible que haya alguna otra solución.

Guarde los nombres de sus recursos en un archivo de esta manera.

icon_profile_1 icon_profile_2

Y luego, cuando necesite el ID del recurso, haga esto.

int resID = getResources().getIdentifier("icon_profile_1", "drawable","your_package_name");

Chequea aquí(java.lang.String, java.lang.String, java.lang.String)

Otros consejos

Como R.java se genera automáticamente, no se puede restringir su funcionamiento, ya que volverá a generarse automáticamente cuando se limpie o compile su proyecto.

Esto es imposible en Android porque R.java está autogenerado y no puedes hacer nada al respecto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top