Junior — Middle
Ինչպե՞ս կարելի է փոխանցել տվյալներ ծրագրում ֆրագմենտների միջև:
sobes.tech AI
Պատասխան AI-ից
Android-ում ֆրագմենտների միջև տվյալները կարող են փոխանցվել մի քանի եղանակներով:
- Ֆրագմենտի ստեղծման ժամանակ Bundle-ով — փոխանցել տվյալները ֆրագմենտի արգումենտներում
setArguments()-ի միջոցով և ստանալ դրանքgetArguments()-ի միջոցով:
val fragment = MyFragment()
val bundle = Bundle()
bundle.putString("key", "value")
fragment.arguments = bundle
-
ViewModel-ով, որը ընդհանուր է ակտիվության և ֆրագմենտների համար — օգտագործել
ViewModelտվյալների պահպանում և փոխանակում համար: -
Ինտերֆեյսների և callback-ների միջոցով — ֆրագմենտը կանչում է ակտիվության մեթոդները, որոնք փոխանցում են տվյալները մյուս ֆրագմենտին:
-
SharedPreferences կամ տվյալների բազայի միջոցով — ավելի կայուն պահեստավորում և փոխանակում:
Ամենալավ առաջարկվող մեթոդը ViewModel-ի և LiveData-ի օգտագործումն է, որը ապահովում է ռեակտիվ և անվտանգ տվյալների փոխանակում ֆրագմենտների միջև։