Кадом усулҳоро барои нигоҳ доштани ҳолати интерфейси корбар дар барномаҳо медонед?
sobes.tech AI
Ҷавоб аз AI
Барои нигоҳ доштани ҳолати интерфейси корбар дар барномаҳои Android, усулҳои зерин истифода мешаванд:
-
onSaveInstanceState(Bundle outState) ва onRestoreInstanceState(Bundle savedInstanceState) — имкон медиҳанд, ки ҳолати Activity ё Fragment дар вақти барқарорсозӣ (масалан, дар вақти гардиши экран) нигоҳ дошта шавад ва барқарор карда шавад.
-
ViewModel — маълумотҳои марбут ба UI-ро нигоҳ медорад ва дар тағйироти конфигуратсия, бе аз даст додани ҳолат, зиндагӣ мекунад.
-
SharedPreferences — барои нигоҳ доштани маълумоти содда (танзимотҳо, рамзҳо) байни сессияҳои барнома.
-
Нигоҳ доштани ҳолат дар базаи додаҳо ё файлҳо — барои маълумоти мураккаб ё калон.
-
SavedStateHandle — дар ҳамоҳангӣ бо ViewModel, имкон медиҳад, ки ҳолати UI-ро нигоҳ дошта ва барқарор кард.
Масалан, дар Activity нигоҳ доштани ҳолати майдони матн:
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString("input_text", editText.getText().toString());
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
String text = savedInstanceState.getString("input_text");
editText.setText(text);
}