Sobes.tech
Junior — Middle

Ինչպե՞ս կարելի է փոխանցել տվյալներ ծրագրում ֆրագմենտների միջև:

sobes.tech AI

Պատասխան AI-ից

Android-ում ֆրագմենտների միջև տվյալները կարող են փոխանցվել մի քանի եղանակներով:

  1. Ֆրագմենտի ստեղծման ժամանակ Bundle-ով — փոխանցել տվյալները ֆրագմենտի արգումենտներում setArguments()-ի միջոցով և ստանալ դրանք getArguments()-ի միջոցով:
val fragment = MyFragment()
val bundle = Bundle()
bundle.putString("key", "value")
fragment.arguments = bundle
  1. ViewModel-ով, որը ընդհանուր է ակտիվության և ֆրագմենտների համար — օգտագործել ViewModel տվյալների պահպանում և փոխանակում համար:

  2. Ինտերֆեյսների և callback-ների միջոցով — ֆրագմենտը կանչում է ակտիվության մեթոդները, որոնք փոխանցում են տվյալները մյուս ֆրագմենտին:

  3. SharedPreferences կամ տվյալների բազայի միջոցով — ավելի կայուն պահեստավորում և փոխանակում:

Ամենալավ առաջարկվող մեթոդը ViewModel-ի և LiveData-ի օգտագործումն է, որը ապահովում է ռեակտիվ և անվտանգ տվյալների փոխանակում ֆրագմենտների միջև։