如何使 BottomNavigationBar 持久化以及如何使选项卡在 Flutter 中不重新加载

How to make BottomNavigationBar persistent and how to make tabs not reload in Flutter

已解决: 使用 CuperinoTabScaffold() 和 CupertinoTabBar() 解决了这两个问题。

你好,我有一个关于 BottomNavigationBar 的问题。

假设我有一个带有 5 个标签的 BottomNavigationBar:

首页-地图-消息-好友-设置

和路线:

**Home -> 
Map -> 
Messages -> message_screen
Friends -> friend_list -> deletefriend_screen
Settings -> login_screen**

问题是,我不知道如何让 BottomNavigationBar 在我按下 friend_list 时不消失,当我在朋友屏幕上时。

第二个问题是,我想让 Home、Map、Messages、Friends、Settings 屏幕持久化,所以当我将标签页从 Home 切换到 Map 或从 **Map ->Friends-> friend_list -> back to Map** 时,地图不应该重新加载。但是当我去 **Friends -> friend_list -> deletefriend_screen _> Settings -> Friends -> friend_list** friend_list 应该重新加载。只有第一个屏幕,选项卡应该是持久的。

感谢大家的帮助:_)

不太明白问题1的用例,但是对于第二个问题,使用keepalive:

class TestState extends State<Test> with AutomaticKeepAliveClientMixin {
  @override
  bool get wantKeepAlive => true;

  @override
  Widget build(BuildContext context) {
    super.build(context);
    return
  }
}

这取决于你如何使用它。我可能需要查看您的代码才能了解发生了什么。但是你可以检查这个类似的 post 是否回答了你的问题: