Класс OnBackPressedDispatcher
Класс OnBackPressedDispatcher
управляет жестом и кнопкой "назад"
на ComponentActivity.
Получают его свойством onBackPressedDispatcher
у activity.
Обработчики добавляют через
addCallback
с объектом
OnBackPressedCallback.
Синтаксис
onBackPressedDispatcher.addCallback(owner, callback)
Методы
| Метод | Описание |
|---|---|
addCallback |
Регистрирует callback в цепочке обработки назад. |
Пример
Давайте перехватим назад в MainActivity:
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 = "abcde")
}
}
}
На экране текст "abcde", нажатие назад
закроет activity через callback.
Смотрите также
-
метод
addCallback,
который подключает обработчик -
класс
OnBackPressedCallback,
который получает событие назад -
метод
finish,
который часто вызывают из callback -
класс
ComponentActivity,
у которой есть onBackPressedDispatcher