Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 颤振:FutureBuilder在另一个视图上运行_Android_Flutter - Fatal编程技术网

Android 颤振:FutureBuilder在另一个视图上运行

Android 颤振:FutureBuilder在另一个视图上运行,android,flutter,Android,Flutter,有视图A和视图B。在A上有FutureBuilder。当我通过Navigator.Push()从视图A切换到视图B时,会激活一个附加到视图A上FutureBuilder的函数。如果我不在FutureBuilder的视图中,我不需要FutureBuilder来工作 这是“查看A”(\uStoriesState)的代码,当我转到B(StoryPage)时,将调用getStories函数,该函数只能在(\uStoriesState)中调用。 。。。。。。。。。。。。 未来的getStories(int

有视图A和视图B。在A上有FutureBuilder。当我通过Navigator.Push()从视图A切换到视图B时,会激活一个附加到视图A上FutureBuilder的函数。如果我不在FutureBuilder的视图中,我不需要FutureBuilder来工作

这是“查看A”(\uStoriesState)的代码,当我转到B(StoryPage)时,将调用getStories函数,该函数只能在(\uStoriesState)中调用。

。。。。。。。。。。。。
未来的getStories(int项、列表选择器SelectedIndex)异步{
试一试{
............
回归故事;
}握手时异常捕捉(e){
打印(“他:+e.toString());
getStories(项目、选取者选择索引);
}关于SocketException捕捉(e){
打印(“SE:+e.toString());
getStories(项目、选取者选择索引);
}关于异常捕获(e){
印刷品(e);
getStories(项目、选取者选择索引);
}
}
............
类_StoriesState扩展状态{
未来列表视图数据;
............
未来getStoriesDataReady(
int项,列表选择器selectedIndex)异步{
列表故事=等待获取故事(项目、选择器选择索引);
if(globals.filter.isEmpty){
回归故事;
}否则{
............
返回搜索故事;
}
}
@凌驾
无效处置(){
super.dispose();
}
@凌驾
小部件构建(构建上下文){
回归未来建设者(
未来:。。。。。。。。。。。。
生成器:(BuildContext上下文,异步快照){
列出儿童名单;
if(snapshot.hasData){
listViewData=
getStoriesDataReady(globals.items、pickerSelectedIndex);
返回脚手架(
正文:未来建设者(
未来:listViewData,
生成器:(BuildContext上下文,
异步快照(快照){
if(snapshot.hasData){
............
子项:FloatingSearchBar.builder(
............
itemCount:snapshot.data.length+1,
项目生成器:
(BuildContext上下文,int索引){
............
onTap:(){
............
导航器。推(
上下文
材料路线(
生成器:(BuildContext上下文)=>StoryPage(………),
).然后((值){
FocusScope.of(context.requestFocus(FocusNode());
});
}
............
}),
............
});
}
}

当您从A推到B时,可以通过以下方式实现:

Function result = await Navigator.push(
  context,
  MaterialPageRoute(builder: (context) => B()),
);
当你从B跳到A时:

Navigator.pop(context, some_function);
然后您可以使用以下命令从调用某个函数:

result();
你可以在未来建筑中使用它


如果您愿意,请共享您的代码,以便我们可以帮助您实现或找到更好的方法。

当您从a推到B时,您可以通过以下方式实现:

Function result = await Navigator.push(
  context,
  MaterialPageRoute(builder: (context) => B()),
);
当你从B跳到A时:

Navigator.pop(context, some_function);
然后您可以使用以下命令从调用某个函数:

result();
你可以在未来建筑中使用它


如果您愿意,请共享您的代码,以便我们可以帮助您实现它或找到更好的方法。

问题是在B视图中调用视图的FutureBuilder问题是在B视图中调用视图的FutureBuilder