颤振 -> 持久底部导航栏 如何脱身



我正在寻找一种摆脱持久底部导航栏的方法。一旦我们进入它,我几乎每一次溃败都试图摆脱它。但这在任何一次都不起作用。只要一个简单的后退按钮,整个东西就消失了,离开了我称之为底部导航栏的地方。请帮我解决这个问题。

谨致问候。

使用此

Navigator.of(context, rootNavigator: true).pushAndRemoveUntil(
MaterialPageRoute(
builder: (BuildContext context) {
return LoginScreen();
},
),
(_) => false,
));

我从这里的问题中找到了这个解决方案。

您可以通过存储根页面buildContext来获得预期结果。这允许您以后基于该context进行导航。

可以通过以下方式存储context

import 'package:flutter/cupertino.dart';
class ContextKeeper {
static BuildContext buildContext;
void init(BuildContext context) {
buildContext = context;
}
}

现在调用根页面中的init函数,该函数包含navigation bar:

@override
void initState() {
super.initState();
ContextKeeper().init(context);
}

您现在可以根据保存的context:调用Navigator

Navigator.pushNamedAndRemoveUntil(
ContextKeeper.buildContext, 'screen_without_your_nav_bar', (_) => false);

我在文章的评论中找到了这个解决方案。

相关内容

  • 没有找到相关文章

最新更新