9. diel - Pripomínač narodenín v Compose - ViewModel
V minulej lekcii, Pripomínač narodenín v Compose - Databáza , sme implementovali SQLite databázu a vytvorili svoju prvú entitu. Inštanciu DAO sme sprístupnili pre celú aplikáciu.
V dnešnom Compose tutoriále doplníme do nášho pripomínača narodenín ViewModel, ktorý v MVVM aplikáciách slúži ako prostredník medzi prezentačnou vrstvou a modelom (dátovou vrstvou). V ňom si pripravíme dáta, ktoré budeme neskôr zobrazovať v užívateľskom rozhraní.
Trieda ReminderViewModel
Najprv si do projektu pridáme balíček s názvom viewmodel av
ňom si vytvoríme novú triedu ReminderViewModel, ktorá bude
dediť z triedy ViewModel.
Atribúty triedy
Do triedy doplníme atribúty, ktorými bude náš ViewModel disponovať:
class ReminderViewModel : ViewModel() { private val personDao = ServiceLocator.personDao!! private val _otherPersons = MutableStateFlow(listOf<Person>()) val otherPersons = _otherPersons.asStateFlow() private val _todayBirthPersons = MutableStateFlow(listOf<Person>()) val todayBirthPersons = _todayBirthPersons.asStateFlow() }
Na začiatku získame inštanciu PersonDao. Tú sme už
vytvorili v triede BirthdayReminderApplication, môžeme teda
použiť zápis ServiceLocator.personDao!!.
Potom pridáme zoznam _otherPersons, kam budeme
...koniec náhľadu článku...
Pokračuj ďalej
Došiel si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Kúpiť iba tento kurz
Získaj okamžitý prístup ku kurzu bez
časového obmedzenia.
275 kreditov
Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel
Obsah článku spadá pod licenciu Premium, kúpou článku súhlasíš so zmluvnými podmienkami.
- Prístup k jednotlivým lekciám podľa spôsobu obstarania.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V Compose tutoriále doplníme do nášho pripomínača narodenín ViewModel, ktorý bude mať na starosť prepojenie logickej vrstvy aplikácie a užívateľského rozhrania.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.