Sobes.tech
Junior — Middle

როგორ გადმოჰყავთ ინფორმაცია პროგრამაში ორი ფრაგმენტის შორის?

sobes.tech AI

პასუხი AI-სგან

Android-ში ორი ფრაგმენტის შორის ინფორმაციის გადაცემა ჩვეულებრივ რამდენიმე მიდგომას მოიცავს:

  1. მიერ Activity: ფრაგმენტები კომუნიკაციას ახორციელებენ მშობელ Activity-ის მეშვეობით, რომელიც შუამავალი ფუნქციონირებს.

  2. ViewModel-ის გამოყენება საერთო სიცოცხლის ციკლთან ერთად Activity-ის: ქმნიან ViewModel-ს, რომელიც დაკავშირებულია Activity-სთან, და ორივე ფრაგმენტი მასზე წვდომას იღებს, მონაცემების გაცვლისთვის LiveData-ის მეშვეობით.

  3. ფრაგმენტის არგუმენტები: მეორე ფრაგმენტის შექმნისას, მონაცემები შეიძლება გადაეცეს Bundle-ის მეშვეობით, setArguments() მეთოდის გამოყენებით.

ViewModel-ის გამოყენების მაგალითი:

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

// პირველ ფრაგმენტში
sharedViewModel.selectedData.value = "გადაცემის მონაცემები"

// მეორე ფრაგმენტში
sharedViewModel.selectedData.observe(viewLifecycleOwner) { data ->
    // გამოიყენეთ მიღებული მონაცემები
}