Sobes.tech
Junior — Middle

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:

  1. Intent andmete edastamisega — liikudes ühest Activity'st teise, saab andmeid edastada Intent abil, kasutades meetodeid putExtra ja neid saada siht-Activity's getIntent().getExtras() kaudu.

  2. Shared ViewModel — kasutades MVVM arhitektuuri ja fragmente, saab luua ühise ViewModel, mis salvestab oleku ja andmed, mis on mõlemale fragmentile kättesaadavad.

  3. Callback-liidesed — üks komponent rakendab liidest, ja teine kutsub selle liidese meetodeid andmete edastamiseks.

  4. EventBus või LiveData — kasutades raamatukogusid nagu EventBus või LiveData, saab tellida sündmusi ja edastada andmeid asünkroonselt.

  5. 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")