Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
346 of 502 menu
◀ ▶

Метод onStop

Метод onStop интерфейса DefaultLifecycleObserver срабатывает при Lifecycle.Event.ON_STOP. Экран owner больше не виден пользователю, состояние опускается до CREATED или ниже.

Синтаксис

override fun onStop(owner: LifecycleOwner) { }

Параметры

Параметр Описание
owner Компонент, который перестал быть виден.

Пример

Давайте сменим текст в onStop:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.material3.Text import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.lifecycle.DefaultLifecycleObserver import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.compose.LocalLifecycleOwner class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { val owner = LocalLifecycleOwner.current var text by remember { mutableStateOf("12345") } val observer = remember { object : DefaultLifecycleObserver { override fun onStop(owner: LifecycleOwner) { text = "abcde" } } } DisposableEffect(owner) { owner.lifecycle.addObserver(observer) onDispose { owner.lifecycle.removeObserver(observer) } } Text(text = text) } } }

На экране при ON_STOP подпись сменится на "abcde", если UI ещё на месте.

Смотрите также

  • метод onStart,
    который парен ON_STOP
  • метод onDestroy,
    который завершает цикл
  • перечисление State,
    после ON_STOP ниже STARTED
  • функция repeatOnLifecycle,
    которая отменяет блок при stop
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить