Junior — Middle
Millised meetodid tagavad andmete oleku säilitamise Androidis Activity uuesti loomisel?
sobes.tech AI
Vastus AI-lt
Säilitamaks andmete olekut, kui Androidi tegevus uuesti luuakse, kasutatakse tavaliselt oleku salvestamise ja taastamise meetodeid läbi Bundle.
Peamised lähenemisviisid:
- Ülekirjutada meetod
onSaveInstanceState(Bundle outState)ja salvestada vajalikud andmedoutState-sse. - Meetodites
onCreate(Bundle savedInstanceState)võionRestoreInstanceState(Bundle savedInstanceState)taastada andmedsavedInstanceState-st.
Näide:
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString("key", someValue);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (savedInstanceState != null) {
someValue = savedInstanceState.getString("key");
}
}
Samuti saab kasutada ViewModel-i andmete salvestamiseks, mis jäävad ellu tegevuse uuesti loomise ajal ning ei nõua nende käsitsi salvestamist Bundle-isse.