Junior — Middle
Мобилдик колдонмолордо экрандын багыты өзгөргөндө маалыматтарды сактоо кандай камсыздалат?
sobes.tech AI
AIден жооп
Androidда экран ориентациясын өзгөртүүдө, Activity кайра түзүлөт, бул учурда учурдагы абалды жоготууга алып келет. Маалыматтарды сактоо үчүн төмөнкү ыкмалар колдонулат:
- onSaveInstanceState(Bundle outState) — Activity жок кылуудан мурун зарыл болгон маалыматтарды Bundle объектисине сактоо үчүн метод.
- onRestoreInstanceState(Bundle savedInstanceState) же savedInstanceStateден маалымат алуу жана абалды калыбына келтирүү үчүн onCreate ичинде.
- Android архитектуралык компоненттеринен ViewModel колдонуу, ал Activity кайра түзүлгөндө маалыматтарды сактайт.
- Маалыматтарды Persistent Storageга (мисалы, SharedPreferences же маалыматтар базасы) узак мөөнөткө сактоо.
Мисал — эсептегичтин абалын сактоо:
override fun onSaveInstanceState(outState: Bundle) {
super.onSaveInstanceState(outState)
outState.putInt("counter", currentCounter)
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (savedInstanceState != null) {
currentCounter = savedInstanceState.getInt("counter")
}
}