flutter页面生命周期监听

本文介绍了Flutter中页面生命周期的概念,并详细讲解了如何通过RouteObserver和navigatorObservers来监听页面状态变化,包括didPush、didPop等关键方法。此外,还展示了withRouteAware混入类的使用,帮助开发者更好地管理和控制页面的生命周期。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

在Android、iOS原生开发中都存在页面生命周期函如Android(Activity 生命周期,一个Activity相当于一个页面):

在这里插入图片描述


一、生命周期是什么?

一个页面创建到销毁的过程。

二、在flutter中监听页面生命周期的方法

1.RouteObserver

在MyApp定义RouteObserver

static final RouteObserver<ModalRoute<void>>routeObserver=RouteObserver<ModalRoute<void>();

2.navigatorObservers:

代码如下(示例):

MaterialApp(
 	navigatorObservers: [MyApp.routeObserver],
 )

该处使用的url网络请求的数据。

3. with RouteAware

class _XXPageState extends State<XXPage> with RouteAware {
	
  void didChangeDependencies() {
    // TODO: implement didChangeDependencies
    super.didChangeDependencies();
    /// 路由订阅
    MyApp.routeObserver.subscribe(this, ModalRoute.of(context)!);
  }

  
  void dispose() {
    // TODO: implement dispose
    /// 取消路由订阅
    MyApp.routeObserver.unsubscribe(this);
    super.dispose();
  }

  /// Called when the current route has been pushed.

  
  void didPush() {

  }

  /// Called when the current route has been popped off.

  
  void didPop() {

  }

  /// Called when the top route has been popped off, and the current route
  /// shows up.

  
  void didPopNext() {

  }

  /// Called when a new route has been pushed, and the current route is no
  /// longer visible.

  
  void didPushNext() {

  }

}

总结

以上就是今天要讲的内容,在Android、ios中有直接可以复写的生命周期函数,但是在flutter中需要自己注册监听才能够使用其生命周期函数。


创作不易,请作者喝杯咖啡:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

申徒嘉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值