flutter中tabview切换避免重回

1.使用AutomaticKeepAliveClientMixin,根据文档说明
/// A mixin with convenience methods for clients of [AutomaticKeepAlive]. Used
/// with [State] subclasses.
///
/// Subclasses must implement [wantKeepAlive], and their [build] methods must
/// call super.build (the return value will always return null, and should be
/// ignored).
使用条件
1.必须是 Statefull 的widget
2.重写 wantKeepAlive
@override
bool get wantKeepAlive => true;
3.在build方法中,在返回你的内容之前必须调用super.build(context);
Widget build(BuildContext context) {
super.build(context);
return Scaffold(...);
}

国内的文章中都忽略了第三点,会导致意想不到的问题,所以建议大家还是多看官方文档

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我在坠落 灵魂起飞 从不知名的起点 飞坠未知的深渊 哪一瞬间 我耳晕目眩 我知道我渴望清醒 我希望用我的思想 去除...
    余木草阅读 628评论 0 2
  • 人类初破开混沌,文明逐步成形,开始了解三界之初,天界因疏忽将近乎四分之一的魔兽放入凡间。 魔兽到了人间便毫无忌...
    星幻月琉阅读 1,205评论 0 1