SQLite
 sql >> Base de données >  >> RDS >> SQLite

L'ID de ressource change-t-il à chaque démarrage d'une application

Une approche consisterait à stocker les drawables dans strings.xml sous la forme d'un tableau de chaînes, quelque chose comme ceci :

 <string-array name="location_flags">
    <item>@drawable/ic_image_name</item>
    <item>@drawable/ic_image_name</item>
    <item>@drawable/ic_image_name</item>
    <item>@drawable/ic_image_name</item>
    <item>@drawable/ic_image_name</item>
    <item>@drawable/ic_image_name</item>
    <item>@drawable/ic_image_name</item>
</string-array>

Ensuite, lisez ce tableau dans votre code d'activité :

TypedArray locationFlags=getResources().obtainTypedArray(R.array.location_flags);

Ensuite, en appliquant la boucle for, vous pouvez obtenir le Drawable quelque chose comme ceci :

for(int i=0i<locationFlags.length();i++)
 {

   Drawable drawable = locationFlags.getResourceId(i, -1);
 }

Assurez-vous de recycler le TypedArray après l'avoir utilisé, car il s'agit d'une ressource partagée :

 locationFlags.recycle();