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

Метод didChangeAppLifecycleState

Метод didChangeAppLifecycleState миксина WidgetsBindingObserver получает новую фазу: приложение на экране, свернуто или его сейчас закроют. Фазу передают значением AppLifecycleState.

Синтаксис

void didChangeAppLifecycleState()(AppLifecycleState state)

Параметры

ПараметрОписание
stateНовая фаза AppLifecycleState.

Пример

Давайте выведем имя фазы:

import 'package:flutter/material.dart'; void main() => runApp(MaterialApp(home: Scaffold(body: Center(child: ObsDemo())))); class ObsDemo extends StatefulWidget { const ObsDemo({super.key}); @override State<ObsDemo> createState() => _ObsDemoState(); } class _ObsDemoState extends State<ObsDemo> with WidgetsBindingObserver { String label = 'abcde'; @override void initState() { super.initState(); WidgetsBinding.instance.addObserver(this); } @override void dispose() { WidgetsBinding.instance.removeObserver(this); super.dispose(); } @override void didChangeAppLifecycleState(AppLifecycleState state) { setState(() => label = state.name); } @override Widget build(BuildContext c) => Text(label); }

На экране текст сменится по событию.

Пример

Давайте сравним с paused:

import 'package:flutter/material.dart'; void main() => runApp(MaterialApp(home: Scaffold(body: Center(child: Text('abcde')))));

На экране текст 'abcde'.

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

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