Milliste meetoditega saab rakenduse kahe kasutajaliidese komponendi või ekraani vahel teabevahetust realiseerida?
sobes.tech AI
Vastus AI-lt
Teabe vahetamine kahe kasutajaliidese komponendi või ekraani vahel Androidis võib olla teostatav mitmel viisil:
-
Intent andmete edastamisega — liikudes ühest Activity'st teise, saab andmeid edastada
Intentabil, kasutades meetodeidputExtraja neid saada siht-Activity'sgetIntent().getExtras()kaudu. -
Shared ViewModel — kasutades MVVM arhitektuuri ja fragmente, saab luua ühise ViewModel, mis salvestab oleku ja andmed, mis on mõlemale fragmentile kättesaadavad.
-
Callback-liidesed — üks komponent rakendab liidest, ja teine kutsub selle liidese meetodeid andmete edastamiseks.
-
EventBus või LiveData — kasutades raamatukogusid nagu EventBus või LiveData, saab tellida sündmusi ja edastada andmeid asünkroonselt.
-
SharedPreferences või andmebaas — pikaajalise salvestamise ja andmevahetuse jaoks.
Näide andmete edastamisest Intent'i kaudu:
val intent = Intent(this, SecondActivity::class.java)
intent.putExtra("key", "value")
startActivity(intent)
// Teises Activity's
val value = intent.getStringExtra("key")