Hirdetés
- Sapphi: StremHU | Source – Self-hostolható Stremio addon magyar trackerekhez
- Luck Dragon: Óraátállítás
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Luck Dragon: MárkaLánc
- Luck Dragon: Asszociációs játék. :)
- Kempingezés és sátrazás
- Lalikiraly: Mercis kalandok - Huszonnyolcadik rész - Az újrakezdés
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
Új hozzászólás Aktív témák
-
Karma
félisten
válasz
lordjancso
#1221
üzenetére
Semmi nagy dologra nem gondoltam, két dolgot változtatnék a példán a rend kedvéért:
1) Ahogy nézem, nem használja fel az URLImageGetter a konstruktorban átadott Contextet, úgyhogy a tagváltozót és a paramétert törölném azonnal. Ha meg mégis kéne, akkor a View-tól kérném el.
2) A container tagváltozója ugyanennek az osztálynak erősen kapaszkodik (hard reference) a View-ba, úgyhogy ha mondjuk a letöltés tíz percig tart, a felhasználó már régen továbbállt mert megunta, akkor se tudja a GC felszabadítani az egész Activityt.
Könnyen elkerülhető, ha a container tagváltozó nem View, hanem WeakReference<View> típusú. Két sort kell módosítani hozzá, és máris nem akadályozza a GC-t – csak le kell ellenőrizni onPostExecute-ban, hogy megvan-e még a View, vagy már vége.public class URLImageParser implements ImageGetter {
WeakReference<View> container;
public URLImageParser(View t) {
this.container = new WeakReference<View>(t);
}
public class ImageGetterAsyncTask extends AsyncTask<String, Void, Drawable> {
URLDrawable urlDrawable;
...
@Override
protected void onPostExecute(Drawable result) {
View c = URLImageParser.this.container.get();
if (c == null) return;
...
// redraw the image by invalidating the container
c.invalidate();
}
...
}
}[ Módosította: doc ]
Új hozzászólás Aktív témák
- Kerékpárosok, bringások ide!
- Kés topik
- Samsung Galaxy Felhasználók OFF topicja
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Hardcore café
- Sapphi: StremHU | Source – Self-hostolható Stremio addon magyar trackerekhez
- Gumi és felni topik
- Fujifilm X
- Samsung Galaxy S26 Ultra - fontossági sorrend
- Teljes verziós játékok letöltése ingyen
- További aktív témák...
- GYÖNYÖRŰ iPhone 14 Pro 128GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen, MS4322
- darkFlash GR12 Darkstorm Blue/Green
- 27% - DDR5 Notebook 16GB / 32GB / 48GB RAM
- Bomba ár! Lenovo ThinkPad L14 G2i - i5-11G I 16GB I 256SSD I 14" FHD I Cam I W11 I Gari!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RTX 5070Ti 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
