Junior
Activityнин өмүр цикли методдорун билесизби жана алар кандай аткарылат?
sobes.tech AI
AIден жооп
onCreate(): Activity биринчи жолу түзүлгөндө чакырылат. UI жана маалыматтарды баштапкы жөндөөлөр үчүн колдонулат.onStart(): Activity көрнөкөй болот колдонуучуга.onResume(): Activity активдүү болот жана ал алдыңкы планда болот. Колдонуучу менен өз ара аракеттеше алат.onPause(): Activity артка планда өтсө же башка Activity жарым-жартылай жабылса чакырылат. Тез калыбына келтирүү үчүн абалды сактоо үчүн колдонулат.onStop(): Activity башкача көрүнбөйт колдонуучуга. Колдонулбай турган ресурстарды бошотуу үчүн колдонулат.onDestroy(): Activity жок кылынгандан мурун чакырылат. Ресурстарды акыркы тазалоо үчүн колдонулат.onRestart():onStop()кийин чакырылат, кайра көрүнүктүү болот.
Иштөө кезинде методдордун аткаруу тартиби: onCreate() -> onStart() -> onResume().
Артка планда өтүү (мисалы, Home баскычын басканда): onPause() -> onStop().
Фонго кайтып келгенде: onRestart() -> onStart() -> onResume().
Activity жок кылынганда: onPause() -> onStop() -> onDestroy().
Экранды буруу учурунда Activity жок кылынат жана кайра түзүлөт. Тартиби: onPause() -> onStop() -> onDestroy() -> onCreate() -> onStart() -> onResume(). Абалды сактоо үчүн onSaveInstanceState() (onStop() алдын) жана калыбына келтирүү onCreate() же onRestoreInstanceState() (onStart() кийин) колдонулат.
class MyActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main) // UIнин баштапкы түзүлүшү
// savedInstanceStateден абалды калыбына келтирүү
}
override fun onStart() {
super.onStart()
// Activity көрүнүүчү болот
}
override fun onResume() {
super.onResume()
// Activity алдыңкы планда, аралашууга даяр
}
override fun onPause() {
super.onPause()
// Activity артка планда өтөт
// Тез калыбына келтирүүчү абалды сактоо
}
override fun onStop() {
super.onStop()
// Activity көрүнбөйт
// Ресурстарды бошотуу
}
override fun onDestroy() {
super.onDestroy()
// Activity жок кылынат
// Аякталган ресурстарды тазалоо
}
override fun onRestart() {
super.onRestart()
// Activity фондуктан кайтып келет
}
override fun onSaveInstanceState(outState: Bundle) {
super.onSaveInstanceState(outState)
// Жок кылуудан мурун абалды сактоо
}
override fun onRestoreInstanceState(savedInstanceState: Bundle) {
super.onRestoreInstanceState(savedInstanceState)
// Абалды калыбына келтирүү
}
}