Junior — Middle
Ինչպես է իրականացվում ViewModel-ի օգտագործումը Jetpack-ում օգտագործողի ինտերֆեյսի վիճակը կառավարելու համար?
sobes.tech AI
Պատասխան AI-ից
Jetpack-ի ViewModel-ը օգտագործվում է UI-ի վիճակը պահելու և կառավարելու համար՝ տվյալները պահելով կոնֆիգուրացիայի փոփոխությունների ժամանակ (օրինակ՝ էկրանին պտտվելիս): ViewModel-ը բաժանում է UI տրամաբանությունը Activity կամ Fragment-ից, ինչը հեշտացնում է թեստավորումը և սպասարկումը:
Օգտագործման օրինակ:
class MyViewModel : ViewModel() {
private val _text = MutableLiveData<String>()
val text: LiveData<String> = _text
fun updateText(newText: String) {
_text.value = newText
}
}
// Activity կամ Fragment-ում
val viewModel = ViewModelProvider(this).get(MyViewModel::class.java)
viewModel.text.observe(this) { updatedText ->
textView.text = updatedText
}
Այսպիսով, ViewModel-ը պահում է տվյալները, որոնք անցնում են UI-ի վերականգնման ժամանակ, և տրամադրում է դրանք LiveData-ի միջոցով՝ ռեակտիվ թարմացման համար։