如何使 Flutter NestedScrollView 为小部件的主体部分设置动画

问题描述

当单击 ScrollController 列表中的摘要项时,我希望 bodynestedScrollView 小部件的 headersliver 部分设置动画。

class __JobProgDtlBodyState extends State<_JobProgDtlBody> {
  ScrollController controller;

  @override
  void initState() {
    controller = ScrollController();
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    return nestedScrollView(
      floatHeaderSlivers: true,controller: controller,dragStartBehavior: DragStartBehavior.start,headerSliverBuilder: (context,overlap) {
        return [
          SliverGrid(
              gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
                crossAxisCount: 3,crossAxisspacing: 2,mainAxisspacing: 2,childAspectRatio: .95,),delegate: SliverChildBuilderDelegate(
                (context,position) {
                 
                  return SummaryGridTile(
                      position: position,primaryTitle: "{summary.description} ",count:24,isPercentage: summary.isPercentage,primaryIcon: Icons.view_agenda,onClick: () {
                        controller.animateto(context.size.height,duration: kThemeAnimationDuration,curve: Curves.ease);
                      });
                },childCount: 10,))
        ];
      },body: Stack(
        fit: StackFit.expand,children: [
            Container(
              margin: EdgeInsets.symmetric(horizontal: 4),child: Column(
                children: [
                  Expanded(
                    child: Container(
                        margin: EdgeInsets.only(top: 8,left: 4,right: 1),padding:
                            EdgeInsets.symmetric(vertical: 12,horizontal: 4),child: ListView.builder(
                            padding:
                                EdgeInsets.only(top: 14,left: 8,right: 8),shrinkWrap: true,itemCount:10,itemBuilder: (context,pos) {
                             
                              return SalesEnquiryListItem(
                                
                              );
                            })),],Positioned(
            child: FloatingActionButton(
              child: Icon(Icons.sort),onpressed: () {
                FocusScope.of(context).requestFocus(FocusNode());
                Navigator.push<dynamic>(
                  context,MaterialPageRoute<dynamic>(
                      builder: (BuildContext context) =>
                          FilteRSScreen(),fullscreenDialog: false),);
              },right: 8,bottom: 8,)
        ],);
  }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...