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

Метод handleOnBackPressed

Метод handleOnBackPressed класса OnBackPressedCallback перехватывает событие назад, пока isEnabled равен true. Если метод ничего не делает для закрытия, назад считается обработанным и стандартный выход не выполняется. Чтобы закрыть экран, вызывают finish или отключают callback и снова делегируют системе.

Синтаксис

override fun handleOnBackPressed() { finish() }

Пример

Давайте переопределим handleOnBackPressed:

import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.activity.OnBackPressedCallback import androidx.compose.material3.Text class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) onBackPressedDispatcher.addCallback( this, object : OnBackPressedCallback(true) { override fun handleOnBackPressed() { finish() } }, ) setContent { Text(text = "12345") } } }

На экране текст "12345", жест назад вызовет handleOnBackPressed и закроет activity.

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

  • класс OnBackPressedCallback,
    в котором переопределяют метод
  • метод addCallback,
    который регистрирует callback
  • метод finish,
    который вызывают для выхода
  • класс OnBackPressedDispatcher,
    который доставляет событие назад
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить