# Lifecycle.Event

Artifact: [androidx.lifecycle:lifecycle-common](https://developer.android.com/jetpack/androidx/releases/lifecycle) [View Source](https://cs.android.com/search?q=file:androidx/lifecycle/Lifecycle.kt+class:androidx.lifecycle.Lifecycle.Event) Added in [2.0.0](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.0.0)

*** ** * ** ***

Common/AllAndroid/JVM
- Cmn

  ```
  enum Lifecycle.Event : Enum<Lifecycle.Event>
  ```

|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||
| ↳ | [kotlin.Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html)\<[Lifecycle.Event](https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event)\> ||
|   | ↳ | [androidx.lifecycle.Lifecycle.Event](https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event) |

*** ** * ** ***

Represents a transition event triggered by a change in the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner`'s state.

Together with `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State`s, these events form a directed graph defining the valid lifecycle flow of a component:

```kotlin
           +---+
           | INITIALIZED |
           +---+
                  |
                  | ON_CREATE
                  v
             +---+
             | CREATED | ---+
             +---+           |
              |       ^            |
     ON_START |       | ON_STOP    |
              v       |            | ON_DESTROY
             +---+           |
             | STARTED |           |
             +---+           |
              |       ^            |
    ON_RESUME |       | ON_PAUSE   |
              v       |            v
             +---+     +---+
             | RESUMED |     | DESTROYED |
             +---+     +---+
```

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State` | for the states resulting from these transition events. |

## Summary

| ### Enum Values |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_ANY` | A wildcard event constant that matches all `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event`s. |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_CREATE` | Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` enters the created state. |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_DESTROY` | Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` is about to be destroyed. |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_PAUSE` | Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` is about to leave the resumed state. |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_RESUME` | Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` enters the resumed state. |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_START` | Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` enters the started state. |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_STOP` | Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` is about to leave the started state. |

| ### Public companion functions |
|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event?` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#downFrom(androidx.lifecycle.Lifecycle.State)(state: https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State)` Returns the `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` that transitions down from the specified `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#downFrom(androidx.lifecycle.Lifecycle.State)` to a lower state, or `null` if no transition exists. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event?` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#downTo(androidx.lifecycle.Lifecycle.State)(state: https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State)` Returns the `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` that transitions down into the specified target `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#downTo(androidx.lifecycle.Lifecycle.State)`, or `null` if no transition exists. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event?` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#upFrom(androidx.lifecycle.Lifecycle.State)(state: https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State)` Returns the `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` that transitions up from the specified `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#upFrom(androidx.lifecycle.Lifecycle.State)` to a higher state, or `null` if no transition exists. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event?` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#upTo(androidx.lifecycle.Lifecycle.State)(state: https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State)` Returns the `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` that transitions up into the specified target `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#upTo(androidx.lifecycle.Lifecycle.State)`, or `null` if no transition exists. | Cmn |

| ### Public functions |
|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#valueOf(kotlin.String)(value: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` Returns the enum constant of this type with the specified name. | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event>` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#values()()` Returns an array containing the constants of this enum type, in the order they're declared. | Cmn |

| ### Public properties |
|---|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html<https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event>` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#entries()` Returns an immutable `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html` list containing the constants of this enum type, in the order they're declared. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#targetState()` Returns the new `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State` of a `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle` that just reported this `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event`. | Cmn |

## Enum Values

### ON_ANY

```
val Lifecycle.Event.ON_ANY: Lifecycle.Event
```

A wildcard event constant that matches all `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event`s.

### ON_CREATE

```
val Lifecycle.Event.ON_CREATE: Lifecycle.Event
```

Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` enters the created state.

Called after the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner`'s `onCreate` returns. Transitions the lifecycle to `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#CREATED`.

### ON_DESTROY

```
val Lifecycle.Event.ON_DESTROY: Lifecycle.Event
```

Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` is about to be destroyed.

Called before the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner`'s `onDestroy` is called. Transitions the lifecycle to `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#DESTROYED`.

### ON_PAUSE

```
val Lifecycle.Event.ON_PAUSE: Lifecycle.Event
```

Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` is about to leave the resumed state.

Called before the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner`'s `onPause` is called. Transitions the lifecycle to `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#STARTED`.

### ON_RESUME

```
val Lifecycle.Event.ON_RESUME: Lifecycle.Event
```

Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` enters the resumed state.

Called after the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner`'s `onResume` returns. Transitions the lifecycle to `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#RESUMED`.

### ON_START

```
val Lifecycle.Event.ON_START: Lifecycle.Event
```

Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` enters the started state.

Called after the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner`'s `onStart` returns. Transitions the lifecycle to `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#STARTED`.

### ON_STOP

```
val Lifecycle.Event.ON_STOP: Lifecycle.Event
```

Dispatched when the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner` is about to leave the started state.

Called before the `https://developer.android.com/reference/kotlin/androidx/lifecycle/LifecycleOwner`'s `onStop` is called. Transitions the lifecycle to `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#CREATED`.

## Public companion functions

### downFrom

Cmn Added in [2.6.0](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.6.0)

```
fun downFrom(state: Lifecycle.State): Lifecycle.Event?
```

Returns the `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` that transitions down from the specified `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#downFrom(androidx.lifecycle.Lifecycle.State)` to a lower state, or `null` if no transition exists.

|---|---|
| Given `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#downFrom(androidx.lifecycle.Lifecycle.State)` | Returned `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#DESTROYED` | `null` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#INITIALIZED` | `null` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#CREATED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_DESTROY` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#STARTED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_STOP` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#RESUMED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_PAUSE` |

### downTo

Cmn Added in [2.6.0](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.6.0)

```
fun downTo(state: Lifecycle.State): Lifecycle.Event?
```

Returns the `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` that transitions down into the specified target `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#downTo(androidx.lifecycle.Lifecycle.State)`, or `null` if no transition exists.

|---|---|
| Target `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#downTo(androidx.lifecycle.Lifecycle.State)` | Returned `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#DESTROYED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_DESTROY` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#INITIALIZED` | `null` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#CREATED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_STOP` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#STARTED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_PAUSE` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#RESUMED` | `null` |

### upFrom

Cmn Added in [2.6.0](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.6.0)

```
fun upFrom(state: Lifecycle.State): Lifecycle.Event?
```

Returns the `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` that transitions up from the specified `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#upFrom(androidx.lifecycle.Lifecycle.State)` to a higher state, or `null` if no transition exists.

|---|---|
| Given `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#upFrom(androidx.lifecycle.Lifecycle.State)` | Returned `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#DESTROYED` | `null` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#INITIALIZED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_CREATE` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#CREATED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_START` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#STARTED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_RESUME` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#RESUMED` | `null` |

### upTo

Cmn Added in [2.6.0](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.6.0)

```
fun upTo(state: Lifecycle.State): Lifecycle.Event?
```

Returns the `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` that transitions up into the specified target `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#upTo(androidx.lifecycle.Lifecycle.State)`, or `null` if no transition exists.

|---|---|
| Target `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event.Companion#upTo(androidx.lifecycle.Lifecycle.State)` | Returned `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#DESTROYED` | `null` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#INITIALIZED` | `null` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#CREATED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_CREATE` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#STARTED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_START` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#RESUMED` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_RESUME` |

## Public functions

### valueOf

Cmn Added in [2.0.0](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.0.0)

```
fun valueOf(value: String): Lifecycle.Event
```

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

| Throws |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-illegal-argument-exception/index.html` | if this enum type has no constant with the specified name |

### values

Cmn Added in [2.0.0](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.0.0)

```
fun values(): Array<Lifecycle.Event>
```

Returns an array containing the constants of this enum type, in the order they're declared.

This method may be used to iterate over the constants.

The function returns a new instance of the array on every call. The array could be mutated, so working with it may also require defensive copying. Consider using `entries` property as a more efficient alternative returning an immutable list of enum entries.

## Public properties

### entries

Cmn

```
val entries: EnumEntries<Lifecycle.Event>
```

Returns an immutable `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html` list containing the constants of this enum type, in the order they're declared.

### targetState

Cmn Added in [2.3.0](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.3.0)

```
val targetState: Lifecycle.State
```

Returns the new `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State` of a `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle` that just reported this `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event`.

|---|---|
| Reported `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event` | Resulting `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_CREATE` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#CREATED` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_STOP` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#CREATED` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_START` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#STARTED` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_PAUSE` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#STARTED` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_RESUME` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#RESUMED` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_DESTROY` | `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.State#DESTROYED` |
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.Event#ON_ANY` | throws `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-illegal-argument-exception/index.html` |