Amarengo

Articles and news

Startmoduser I Android

Startmoduser er instruksjonene for hvordan aktivitetene skal startes. De er av fire typer som er gitt nedenfor.

  1. standard
  2. singleTop
  3. singleTask
  4. singleInstance

hvis du ikke definerer noen lanseringsmodus, vil den være standard som standard.

slik legger du til lanseringsmoduser

du kan legge til en lanseringsmodus Fra Android Manifest. Koden nedenfor viser hvordan du gjør det.

1
2

<aktivitet android: navn=».MainActivity «
android: launchMode= «singleTop» > < / aktivitet>

Standard

hvis du ikke definerer noen lanseringsmodus, vil aktiviteten som standard ha standard lanseringsmodus. I dette tilfellet opprettes en ny forekomst av aktiviteten hver gang du starter en aktivitet, selv om den finnes i stabelen.

Eksempel ->

Anta at vår nåværende stabel Er A -> B -> C

og vi starter Aktiviteten B igjen med lanseringsmodus «standard»

da vil den nye stakken Være A -> B -> C -> B.

SingleTop

som navnet antyder, med denne lanseringsmodusen bare en enkelt Forekomst av aktiviteten Vil Være Til Stede Hvis Den Er På Toppen.

Eksempel ->

  1. Anta at vår nåværende stabel Er A -> B -> C
    og vi starter Aktiviteten B igjen med startmodus «singleTop»
    da vil den nye stakken Være A -> B -> C -> B.
  2. Anta at vår nåværende stabel Er A -> B -> C
    og vi starter Aktiviteten C igjen med startmodus «singletop»
    Da Vil Den Nye Stakken Være A -> b -> C og hensikten vil bli sendt til onnewintent () – metoden.

SingleTask

med denne startmodus vil aktiviteten bare ha en enkelt forekomst i stakken. Hvis forekomsten ikke er der, vil den opprette en ny, og hvis den er der, vil den gamle motta tilbakeringingen i onNewIntent () – metoden.

Eksempel ->

Anta at vår nåværende stabel Er A -> B – > C – > D

og vi starter Aktiviteten B igjen med startmodus «singleTask»

da vil den nye stabelen Være A – > B.

Som du kan se at tilbakeringingen er mottatt på den gamle forekomsten, Og c Og D-aktiviteter blir ødelagt.

SingleInstance

dette ligner på «singleTask» unntatt aktiviteten med «singleInstance» startmodus vil bli opprettet i en ny stabel.

Eksempel ->

Anta at vår nåværende stabel Er A -> B -> C

og vi starter Aktiviteten D med startmodus «singleInstance»

da vil det være to stabler

  1. A -> B -> C
  2. D

Hvis Du Kaller Aktivitet E, Blir Den Lagt Til I 1.Stabel.

  1. A- > B – > C – > E
  2. D

Kaller aktiviteten D igjen vil kalle den samme aktiviteten fra 2. stabel og sende hensikten til onNewIntent ().

Android anbefaler at du bør bruke standard atferd, men hvis du virkelig ønsker å endre det så dette er hvordan du kan gjøre det.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.