Sobes.tech
Junior — Middle

Jaké metody se používají k výměně dat mezi Fragmenty v Androidu?

sobes.tech AI

Odpověď od AI

Výmena údajov medzi Fragmentmi v Androidu môže byť realizována několika způsoby:

  1. Přes Activity — fragmenty komunikují přes nadřazenou Activity, která slouží jako prostředník. Například, jeden fragment volá metodu Activity s předáním dat, a Activity je předává jinému fragmentu.

  2. Použití ViewModel s životním cyklem Activity — sdílený ViewModel, spojený s Activity, umožňuje fragmentům vyměňovat si data přes LiveData.

  3. Použití rozhraní — fragment definuje rozhraní pro přenos dat, které implementuje Activity.

  4. EventBus nebo jiné knihovny událostí — umožňují odesílat události mezi komponentami.

Příklad s ViewModel:

class SharedViewModel : ViewModel() {
    val selected = MutableLiveData<String>()

    fun select(item: String) {
        selected.value = item
    }
}

// V Fragment A
viewModel.select("Data")

// V Fragment B
viewModel.selected.observe(viewLifecycleOwner) { data ->
    // zpracování dat
}