Junior — Middle
Ի՞նչ պետք է հաշվի առնել հավելվածի վիճակը պահպանելիս onSaveInstanceState մեթոդով։
sobes.tech AI
Պատասխան AI-ից
Օգտագործելիս onSaveInstanceState, կարևոր է հիշել՝
- Պահպանեք միայն փոքր և անհրաժեշտ տվյալներ, օրինակ՝ UI-ի վիճակը (տեքստ դաշտերում, ընտրված տարրեր):
- Չպահպանեք մեծ օբյեկտներ կամ տվյալներ, որոնք կարելի է վերականգնել այլ կերպ (օրինակ՝ տվյալների բազայից կամ ցանցից):
- onSaveInstanceState կոչվում է նախքան ակտիվության ոչնչացումը, օրինակ՝ էկրանին պտտվելու ժամանակ:
- Տվյալների վերականգնումը տեղի է ունենում onCreate կամ onRestoreInstanceState մեթոդներում:
- Օգտագործեք Bundle տվյալների պահպանման համար, աջակցում է հիմնական տիպերին, Serializable, Parcelable:
Օրինակ՝ TextView-ից տեքստի պահպանումը:
override fun onSaveInstanceState(outState: Bundle) {
super.onSaveInstanceState(outState)
outState.putString("input_text", editText.text.toString())
}
override fun onRestoreInstanceState(savedInstanceState: Bundle) {
super.onRestoreInstanceState(savedInstanceState)
val text = savedInstanceState.getString("input_text")
editText.setText(text)
}