我构建的应用程序完全类似于Facebook .. Facebook在第一排折叠的工具栏中包含用于搜索的TextField ..etc,其动态是:当您向下滚动时它被隐藏,而当您向上滚动时它又被显示,我试图制作类似此工具栏的东西..我已经做到了但是性能很差,我现在将向您展示我的代码
我已经尝试过使用SilverAppBar,并且90%都达到了我想要的目标。它的动态效果与facebook app崩溃的工具栏或searchbar不完全一样
处于初始化状态:-
contraller.addListener(() => test());
在test()中,“在此setstate中的问题我每次滚动都将其称为”:-
x = contraller.position.userScrollDirection;
setState(() {
});
在Widget构建(BuildContext上下文)中:-
return returnwidget();
在returnwidget()中:-
if (x == ScrollDirection.reverse) {
return Container();
}
if (x == ScrollDirection.forward || x == null) {
retunrn Container(child : Row(etc ....);
}
我认为解决方案被置于if语句中的setstate中,因此仅当ScrollDirection从正向更改为反向或从反向更改为正向时才调用它,而不是从正向更改为正向,这意味着继续向上滚动或相反。我发现我认为可以解决我问题的东西
didUpdateScrollDirection(direction)
但是我不能用它来查看结果。