问题::GroupsOverview(使用Futurebuilder-代码很长,此处未显示)在点击应用中的其他视图(以及“子视图”)时似乎一直在重建太多的阿尔及利亚行动。我认为这是重建孔树的问题,但我对此一无所知。关于整合的思考范围模型。
我遇到了一个主要问题,就是我对Flutter入门者的整体理解才结束。我有一个“ GroupsOverview”类(每次重新加载),它基于我当前的位置以及来自Web服务(Algolia)的实时数据显示了分组。这是一个有状态的小部件,因为当前位置是通过initState加载的。该视图是选项卡视图中的一个选项卡,该视图又是有状态的。 Keepalive似乎不起作用。那么,当我查看有状态的窗口小部件GroupsOverview时(而不是在应用程序内的其他视图中单击时),该如何管理?
@override
Widget build(BuildContext context) {
return WillPopScope(
onWillPop: () => Future.value(false),
child: new Scaffold(
appBar: AppBar(
leading: Container(),
/*title: Text('Chat.Here', style: TextStyle(color: Colors.white),),
leading: Container(),
backgroundColor: Colors.orange[600],
*/
flexibleSpace: SafeArea(
child: new TabBar(indicatorWeight: 4.0,indicatorColor: Colors.white, controller: controller, tabs: <Tab>[
new Tab(
text: 'Gruppen',
icon: Icon(Icons.group),
),
new Tab(
text: 'Chats',
icon: Icon(Icons.chat_bubble),
),
new Tab(
text: 'Einstellungen',
icon: Icon(Icons.settings),
)
]))),
body: new TabBarView(controller: controller, children: <Widget>[
new first.GroupsOverview(),
new second.ChatsOverview(),
new third.Settings()
])),
);
}