Flutter :屏幕打开时自动滚动到底部

gtlvzcf8  于 2022-12-24  发布在  Flutter
关注(0)|答案(1)|浏览(201)

我正在使用onpressed()向下滚动到列表视图的底部,但我想在不按**按钮的情况下实现这一点,

它必须自动滚动每个屏幕打开。我试图把它放在initState()它的不工作但如果我按下按钮,它工作
如何自动滚动?

工作代码:

floatingActionButton: new FloatingActionButton(child: 
 Icon(Icons.arrow_downward),onPressed:_hola,)


_hola(){
  print("inti state started successfully");
controller1.animateTo(
controller1.position.maxScrollExtent,
  duration: const Duration(milliseconds: 10),
   curve: Curves.easeOut,);
}

非工作代码://此代码打印成功,但没有真正调用函数

class HomeState extends State<MyNewMessages> {
  @override
  void initState() 
{
 super.initState();
  print("hola is scrolling");
  _hola;
}
);
}

按下浮动按钮之前x1c 0d1x按下浮动按钮之后

s3fp2yjn

s3fp2yjn1#

构建ListView或添加项目时(不确定如何操作),使用SchedulerBinding.instance.addPostFrameCallback更改下一帧的滚动位置。

SchedulerBinding.instance.addPostFrameCallback((_) {
  controller1.animateTo(
    controller1.position.maxScrollExtent,
    duration: const Duration(milliseconds: 10),
    curve: Curves.easeOut,);
  });

相关问题