Junior
Activity-nin həyat dövrü metodlarını bilirsiniz və onlar necə icra olunur?
sobes.tech Süni İntellekt
AI-dan cavab
onCreate(): Activity ilk dəfə yaradıldıqda çağrılır. UI və məlumatların başlanğıcını qoymaq üçün istifadə olunur.onStart(): Activity istifadəçiyə görünür olur.onResume(): Activity aktiv olur və ön planda yerləşir. İstifadəçi onunla qarşılıqlı əlaqədə ola bilər.onPause(): Activity arxa plana keçəndə və ya başqa bir Activity onu qismən örtəndə çağrılır. Tez bərpa olunacaq vəziyyəti saxlamaq üçün istifadə olunur.onStop(): Activity artıq istifadəçiyə görünmür. İstifadə olunmayan resursları azad etmək üçün istifadə olunur.onDestroy(): Activity məhv ediləndən əvvəl çağrılır. Resursların son təmizlənməsi üçün istifadə olunur.onRestart():onStop()-dan sonra çağrılır və Activity yenidən görünür olur.
Başlanğıcda metodların icra sırası: onCreate() -> onStart() -> onResume().
Arxa plana keçid (məsələn, Home düyməsini basmaq) zamanı metodların icra sırası: onPause() -> onStop().
Fondan qayıdış zamanı metodların icra sırası: onRestart() -> onStart() -> onResume().
Activity-nin məhv edilməsi zamanı metodların icra sırası: onPause() -> onStop() -> onDestroy().
Ekranın döndürülməsi zamanı Activity məhv edilir və yenidən yaradılır. Sıra: onPause() -> onStop() -> onDestroy() -> onCreate() -> onStart() -> onResume(). Vəziyyəti saxlamaq üçün onSaveInstanceState() istifadə olunur (onStop()-dan əvvəl çağrılır) və bərpa onCreate() və ya onRestoreInstanceState()-də həyata keçirilir (onStart()-dan sonra çağrılır).
class MyActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main) // UI-nin başlanğıcı
// savedInstanceState-dən vəziyyəti bərpa et
}
override fun onStart() {
super.onStart()
// Activity görünür olur
}
override fun onResume() {
super.onResume()
// Activity ön planda, qarşılıqlı əlaqəyə hazır
}
override fun onPause() {
super.onPause()
// Activity arxa plana keçir
// Tez bərpa ediləcək vəziyyəti saxla
}
override fun onStop() {
super.onStop()
// Activity görünmür
// Resursları azad et
}
override fun onDestroy() {
super.onDestroy()
// Activity məhv edilir
// Resursların son təmizlənməsi
}
override fun onRestart() {
super.onRestart()
// Activity fondan geri qayıdır
}
override fun onSaveInstanceState(outState: Bundle) {
super.onSaveInstanceState(outState)
// Vəziyyəti saxlamaq, məhv etmədən əvvəl
}
override fun onRestoreInstanceState(savedInstanceState: Bundle) {
super.onRestoreInstanceState(savedInstanceState)
// Vəziyyəti bərpa et
}
}