Sobes.tech
Junior — Middle

Android'de Fragmentler arasında veri alışverişi nasıl gerçekleştirilir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Android'de Fragmentler arasında veri alışverişi birkaç farklı şekilde gerçekleştirilebilir:

  1. Activity aracılığıyla — fragmentler, arabulucu görevi gören ana Activity üzerinden iletişim kurar. Örneğin, bir fragment, verileri ileten bir Activity metodunu çağırır ve Activity, bunları başka bir fragmente aktarır.

  2. Activity'nin yaşam döngüsü ile ViewModel kullanımı — Activity ile ilişkili ortak ViewModel, LiveData aracılığıyla fragmentlerin veri alışverişine olanak tanır.

  3. Arayüzlerin kullanımı — fragment, veri iletimi için bir arayüz tanımlar ve bu arayüzü Activity uygular.

  4. EventBus veya diğer olay kütüphaneleri — bileşenler arasında olay göndermeyi sağlar.

ViewModel ile örnek:

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

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

// Fragment A'da
viewModel.select("Veriler")

// Fragment B'de
viewModel.selected.observe(viewLifecycleOwner) { data ->
    // veri işleme
}