在Flutter中完成“构建”功能时是否有任何回调告诉我?

在Flutter中完成“构建”功能时是否有任何回调告诉我?,第1张

概述我的屏幕上有一个listView.我已经附加了一个控制器.我可以调用我的端点,接收响应,解析它并插入行. ListView应该自动滚动.确实如此,但并非完美无缺.我总是背后的一个项目.这是我的代码: @override Widget build(BuildContext context) { // Scroll to the most recent item if (equat 我的屏幕上有一个ListVIEw.我已经附加了一个控制器.我可以调用我的端点,接收响应,解析它并插入行. ListVIEw应该自动滚动.确实如此,但并非完美无缺.我总是背后的一个项目.这是我的代码:

@overrIDe  Widget build(BuildContext context) {    // Scroll to the most recent item    if (equationList.length > 0) {      _toEnd();    }    return new Scaffold(      appbar: new Appbar(        Title: new Text(Widget.Title),),body: EquList(equationList,_scrollController),floatingActionbutton: new floatingActionbutton(        onpressed: onFabClick,tooltip: 'Fetch Post',child: new Icon(isLoading ? Icons.pause : Icons.play_arrow),);  }  voID _toEnd() {    _scrollController.animateto(      _scrollController.position.maxScrollExtent,duration: const Duration(milliseconds: 250),curve: Curves.ease,);  }

问题是,我在最后一项插入列表之前调用_toEnd()函数.所以,我正在寻找一个回调(如果有的话)告诉我build()完成了.然后我调用我的_toEnd()函数.

在这种情况下,最佳做法是什么?

解决方法 详细说明 Günter’s评论:

@overrIDeWidget build(BuildContext context) {  executeAfterBuild();  return Container();}Future<voID> executeAfterBuild() async {  // this code will get executed after the build method  // because of the way async functions are scheduled}

有一个很好的例子illustrating that effect here.
关于Dart can be found here中的日程安排的广泛信息.

总结

以上是内存溢出为你收集整理的在Flutter中完成“构建功能时是否有任何回调告诉我?全部内容,希望文章能够帮你解决在Flutter中完成“构建”功能时是否有任何回调告诉我?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1000454.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存