Sobes.tech
Junior

Milliseid tegevusliini meetodeid teate ja kuidas need täidetakse?

sobes.tech AI

Vastus AI-lt

  • onCreate(): Kutsutakse, kui Activity luuakse esmakordselt. Kasutatakse kasutajaliidese ja andmete algseks seadistamiseks.
  • onStart(): Activity muutub kasutajale nähtavaks.
  • onResume(): Activity muutub aktiivseks ja asub esiplaanil. Kasutaja saab sellega suhelda.
  • onPause(): Kutsutakse, kui Activity läheb taustale või teine Activity osaliselt selle peidab. Kasutatakse oleku salvestamiseks, mida on vaja kiiresti taastada.
  • onStop(): Activity ei ole enam kasutajale nähtav. Kasutatakse kasutamata ressursside vabastamiseks.
  • onDestroy(): Kutsutakse enne, kui Activity hävitatakse. Kasutatakse ressursside lõplikuks puhastamiseks.
  • onRestart(): Pärast onStop() kutsutakse, kui Activity muutub uuesti nähtavaks.

Metoodikate täitmise järjekord käivitamisel: onCreate() -> onStart() -> onResume().

Järjekord, kui liikuda taustale (näiteks Home nupu vajutamisel): onPause() -> onStop().

Tagasitulekul taustast: onRestart() -> onStart() -> onResume().

Metoodikate täitmise järjekord Activity hävitamisel: onPause() -> onStop() -> onDestroy().

Ekraani pööramisel hävitatakse Activity ja luuakse uuesti. Järjekord: onPause() -> onStop() -> onDestroy() -> onCreate() -> onStart() -> onResume(). Oleku salvestamiseks kasutatakse onSaveInstanceState() (kutsutakse enne onStop()) ja taastamiseks onCreate() või onRestoreInstanceState() (kutsutakse pärast onStart()).

class MyActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main) // Kasutajaliidese initsialiseerimine
        // Oleku taastamine savedInstanceState-st
    }

    override fun onStart() {
        super.onStart()
        // Activity muutub nähtavaks
    }

    override fun onResume() {
        super.onResume()
        // Activity on esiplaanil, saadaval kasutajaga suhtlemiseks
    }

    override fun onPause() {
        super.onPause()
        // Activity läheb taustale
        // Kiire taastatava oleku salvestamine
    }

    override fun onStop() {
        super.onStop()
        // Activity ei ole nähtav
        // Ressursside vabastamine
    }

    override fun onDestroy() {
        super.onDestroy()
        // Activity hävitatakse
        // Lõplik ressursside puhastus
    }

    override fun onRestart() {
        super.onRestart()
        // Activity naaseb taustast
    }

    override fun onSaveInstanceState(outState: Bundle) {
        super.onSaveInstanceState(outState)
        // Oleku salvestamine enne hävitamist
    }

    override fun onRestoreInstanceState(savedInstanceState: Bundle) {
        super.onRestoreInstanceState(savedInstanceState)
        // Oleku taastamine
    }
}