Czy Android utrzymuje pamięć podręczną zasobów pobieranych przez aplikacje i ponownie je wykorzystuje, czy też dobrą praktyką jest wstępne ładowanie wszystkich rysunków, które mogą być dynamicznie przypisywane do różnych widżetów?Czy istnieje jakiś sposób wstępnego ładowania materiałów rysunkowych z zasobów?
na przykład:
public static final int[] SETS = {
R.drawable.set0, R.drawable.set1, R.drawable.set2,
R.drawable.set3, R.drawable.set4, R.drawable.set5, R.drawable.set6,
R.drawable.set7, R.drawable.set8, R.drawable.set9, R.drawable.set10};
public Drawable[] sets;
void init() {
load(sets, SETS);
}
public void load(Drawable[] d, int[] ids) {
for (int i = 0; i < ids.length; i++) {
if (ids[i] == 0)
d[i] = null;
else
d[i] = context.getResources().getDrawable(ids[i]);
}
}
Czy istnieje sposób na wyłączenie buforowania? Kilkakrotnie uzyskuję jeden wyciąg i zmieniam jego cieniowanie. Wszystkie kończą w tym samym odcieniu. Bardzo frustrujące. – astryk
dlatego jest mutate() na drawables ... – headsvk