Tengo una aplicación de Android que usa un componente de galería para elegir un icono y asignarlo a un botón.
El conjunto de iconos se encuentra en res/drawable
carpeta y se accede en la galería con el adaptador típico de la guía:Android: cambio de id dibujable después de modificar recursos
private Integer[] Imgid = {
R.drawable.icon_home,
R.drawable.icon_home2,
...
}
Después de un icono de la elección, i almacenan la configuración en una base de datos con id del botón y del el dibujable
Todo funciona, pero he notado que si quiero agregar o modificar mi conjunto de iconos o los recursos en general de mi aplicación, los identificadores del recurso anterior podrían cambiar, por lo que las preferencias en el archivo db se refieren al icono incorrecto.
¿Hay alguna manera de forzar la identificación anterior de la clase R para que no cambien en el futuro? ¿O hay otra forma de administrar el elemento de la galera componente con otro atributo que id? (Tal vez el nombre de cadena y la reflexión?)
Gracias de antemano
eso es que los chicos respuesta correcta. android cambia los identificadores del archivo r de forma dinámica. si desea una entrada estática, use el nombre del recurso tal como lo indica kriz. el ID no es estático y no hay forma de hacerlo estático. – masi