Hirdetés

Új hozzászólás Aktív témák

  • thon73
    tag

    Tehát ha jól értem az adatbázisod olyan rekordokat tartalmaz, melyek mindegyikének van egy dátuma, a célod pedig, hogy egy-egy Fragment-en megjelenítsd az egyes hónapokba beleeső adatbázisrekordokat (valószínűleg listás nézetben).

    Room és PagedList segítségével elég egyszerűen megoldható.
    Kell egy olyan lekérdezés, ami paraméterben megadott év és hónap segítségével rászűr a szükséges bejegyzésekre ezt pedig egy PagedList LiveData formájában visszaadja. Erre az adott Fragment-ben feliratkozol és az eredményt átadod egy RecyclerView PagedListAdapter-ének.
    Így nem kell szálakkal foglalkoznod, mindent megold magától.

    Következő Fragment-re navigáláskor pedig a jelenlegi alapján ki tudod számolni, hogy melyik hónap következik és át tudod adni a következőnek.

    Ennek egy része találgatás, de talán el tudsz indulni.

    Minden egyes fragment nyit egy külön háttérszálat?

    Egyszerre hány Fragment-et hozol létre? ViewPager-t használsz, gombnyomásra ugrasz egyik hónapról a másikra, esetleg valami más?

    Igen, majdnem pontosan így. Köszi, ezen el tudok indulni. Leginkább az okoz nehézséget, hogy több lehetőség közül kiválasszam a legegyszerűbben elkészíthetőt.

    A megjelenítést egy ViewPager végzi, csak nem egészen listában, hanem egy custom-view-ben. Konkréten ez egy ugyanolyan naptároldal, mint az összes többi.
    Azért kérem el a hónap összes adatát, mert ezen az oldalon mindegyik szerepelni fog.
    Jobb és bal slide-dal ugrok a szomszédos hónapokra - elvileg végtelen lehet, de 3 évvel - 36 hónap - mindenképp számolni kell. Pontosan ezért nem szerettem volna minden ablaknak külön háttérszálat nyitni.
    A háttérben egy elég összetett adatbázis áll, de a "naptár" rész elég egyszerű. Mindenki ugyanabba a táblába jegyezhet be dátummal és rövid szöveggel, nekem most csak ezt a táblát kell lekérdeznem.
    Kis érdekesség, hogy a naptár-rekordok feljegyzik, hogy honnan származnak, és vissza tudnak vinni a kiindulási rekordra több táblában is.

Új hozzászólás Aktív témák