Hirdetés
- Másfél millió forintért már haza is vihető a Huawei aranyozott csúcsórája
- Gyártási gondok a BOE-nél: Samsung kaphatja az iPhone 17e kijelzőit is
- Mágneses hordozható töltővel készül a Samsung a Galaxy S26 mellé
- Képeken mutatjuk meg a Lenovo Idea Tab Pro Gen 2-t
- Akciófigyelő: Új EarFun Air Pro fülhallgatók kedvezményes áron
- Google Pixel topik
- Samsung Galaxy A54 - türelemjáték
- Komoly kihívót küldött a konkurenciára a Honor
- Milyen okostelefont vegyek?
- Vége lehet a OnePlusnak? Állítólag az Oppo bezárná a márkát
- Mágneses hordozható töltővel készül a Samsung a Galaxy S26 mellé
- Samsung Galaxy Watch4 és Watch4 Classic - próbawearzió
- Hat év támogatást csomagolt fém házba a OnePlus Nord 4
- Samsung Galaxy A55 - új év, régi stratégia
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
Új hozzászólás Aktív témák
-
thon73
tag
válasz
WonderCSabo
#1812
üzenetére
Az, hogy lényeges különbség van a retained Fragment ELSŐ LÉTREHOZÁSA, és az összes többi VISSZAÁLLÍTÁS között.
Vagyis:
A Fragmentet először az Activity.onResumeFragments részben fogom megtalálni. Ha nincs meg, akkor itt kell először is létrehozni.
Ha nem volt meg, akkor a létrehozás után még semmilyen élitciklus nem fut le (majd csak az onResumeFragments UTÁN)
Ha viszont megvolt, akkor eddigre minden lefutott, beleértve a Fragment.onResume metódusát is.A konkrét próbálkozásban egy ListFragmentet készítettem, amelyik az adatait ebből a megőrzött globális adatállományból veszi (a végső megoldás mindig egy kicsit összetettebb persze). Ez azt jelenti, hogy valahol meg kell mondjam az adapternek, hogy hol vannak az adatai.
Az első létrehozáskor (persze ilyenkor az adatállomány még üres, de majdan ide fog bekerülni) nem lesz gond, hiszen mire a ListFragment életciklus részei lefutotnak, ott van az Activityből elérhető módon a másik, adatokat tartalmazó Fragment.
Minden további indításkor azonban mindkét Fragment végigfut az onResume-ig, mielőtt én egyáltalán látnám az adatokat tartalmazó Fragmentet az Activity.onResumeFragments részében! Vagyis nekem kellene kiadni egy pl. MyListFragment.onVariableReady() utasítást, ami betölti az adapterbe az immáron elérhető adatokat.
Ez a megoldás viszont az első indításkor nem lesz jó, hiszen még adapter sincs sehol!
Hozzáteszem: ez a ListFragment dolog valójában csak egy próba. Nekem egy sok részletből álló rajzot kellene elkészítenem, aminek az egyes részeit tudom egy-egy Fragmenttel megalkotni. Az alapadatokat természetesen mentem, de minden apró számítást nem akartam. Ettől a speciális problémától elvonatkoztatva a kérdés általános érvényű: hová tegyem a Fragment megőrzendő adatait, ha magát a konkrét Fragmentet nem akarom megőrizni ((mert pl. változik a gép fordításával))?
A static field egyébként jó ötlet, csak úgy emlékszem, valamiért (újra el kellene olvasni) kerülendőnek javasolta a hivatalos doksi. De ezt elő kéne ásni, lehet, hogy rosszul emlékszem...
((Bocs, ha kicsit bonyolult, már játszom vele egy ideje. Szívesen küldök kódot, de a sallangok, és próbálkozások miatt előbb ki kellene fésülnöm. Bár kivételesen a szöveg talán többet mond.))
Új hozzászólás Aktív témák
- Toshiba Enterprise Capacity MG09 18TB - 512MB, 7200rpm, SATA3 - 100/100 -as - Eladó!
- Akció! Gamer PC-Számítógép! Csere-Beszámítás! R5 1600X / RX 580 8GB / 500GB SSD + 2TB HDD / 16GB RAM
- SOYO M4 Air Mini PC, Intel N95, 16 GB DDR4 RAM, 512 GB SSD
- Új Lenovo LOQ 15IRX10, FHD IPS, i7-13650HX ,NVIDIA RTX 5070, 24GB DDR5, 512GB NVMe, gar
- HÁLÓZATI SWITCH AKCIÓ! Több db egyben, használt, nem használt , dobozos, 24-, 26-, 48 portos!
- GYÖNYÖRŰ iPhone XS Max 256GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3998, 100% Akkumulátor
- REFURBISHED - DELL Performance Dock WD19DCS (210-AZBN)
- Vásárlunk iPhone 12/12 Mini/12 Pro/12 Pro Max
- GYÖNYÖRŰ iPhone 14 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS4248,100% Akksi
- 207 - Lenovo LOQ (17IRB8) - Intel Core i5-13400F, RTX 3050
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


