• flutter SliverAppBar使用


    SliverAppBar是AppBar升级版,利用SliverAppBar可是实现scrollview滚动跟随appbar,还可以控制appbar隐藏和显示
    SliverAppBar一般配合CustomScrollView使用

    Scaffold(
          body: CustomScrollView(
            physics: ClampingScrollPhysics(),
            shrinkWrap: true,
            slivers: <Widget>[
              SliverAppBar(
                title: Text('data'),
                leading: Icon(Icons.arrow_back_ios),
                expandedHeight: 200,
                // floating: true,
                // snap: false,
                // pinned: true,
                // primary: true,
                flexibleSpace: FlexibleSpaceBar(
                  background: Image.asset(
                    'assets/icon_home_topbg.png',
                    fit: BoxFit.none,
                  ),
                  // title: Container(
                  //   decoration: BoxDecoration(
                  //     gradient: LinearGradient(colors: [Colors.red, Colors.blue]),
                  //   ),
                  // ),
                  // collapseMode: CollapseMode.parallax,
                  titlePadding: EdgeInsets.all(0),
                  centerTitle: true,
                ),
              ),
              SliverList(
                delegate: SliverChildBuilderDelegate(
                  (BuildContext context, int index) {
                    return Container(
                      alignment: Alignment.centerLeft,
                      child: Text('aaaaaa'),
                      // Container(
                      //   child: Column(
                      //     crossAxisAlignment: CrossAxisAlignment.start,
                      //     children: <Widget>[
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       Text('data'),
                      //       // ListView(
                      //       //   shrinkWrap: true,
                      //       //   physics: NeverScrollableScrollPhysics(),
                      //       //   children: <Widget>[
                      //       //     Text('data'),
                      //       //     Text('data'),
                      //       //   ],
                      //       // )
                      //     ],
                      // ),
                      // ),
                    );
                  },
                  childCount: 100,
                ),
                // itemExtent: 50,
              )
            ],
          ),
        );
    

    SliverList和SliverFixedExtentList的区别在于item高度是否固定

  • 相关阅读:
    泛型类,泛型方法的使用
    Mapper注解与MapperScan注解
    Configuration注解
    LA 4254 Processor (二分 + 贪心)
    UVa 10382 Watering Grass (贪心 区间覆盖)
    UVA 10795 A Different Task (递归)
    LA 3401 Colored Cubes (搜索 + 暴力)
    uva11464 Even Parity (枚举+递推)
    icpc2021 昆明 K (dfs爆搜)
    hdu3533 (bfs + 模拟)
  • 原文地址:https://www.cnblogs.com/qqcc1388/p/12419966.html
Copyright © 2020-2023  润新知