sql >> Database >  >> RDS >> SQLite

Verandert het resource-ID elke keer dat een toepassing wordt gestart?

Een benadering zou zijn om de drawables in strings.xml op te slaan als een stringarray, zoiets als dit:

 <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>

Lees dan deze array in je activiteitscode:

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

Als je vervolgens de for-lus toepast, krijg je de Drawable ongeveer als volgt:

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

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

Zorg ervoor dat u de TypedArray recyclet na gebruik, aangezien het een gedeelde bron is:

 locationFlags.recycle();


  1. MICROSECONDE() Voorbeeld – MySQL

  2. 10 tijdbesparende snelkoppelingen in Microsoft Access

  3. Fout bij gebruik van oracle.dataaccess.dll

  4. Kolomtype wijzigen en niet null instellen