如何使用手势检测器以及如何创建可拖动的顶部栏

时间:2019-04-04 10:56:46

标签: dart flutter

当我尝试使android状态栏像应用程序中的顶部栏一样时,我使用手势检测器,但我不知道如何进行操作。如何在上方滑动容器的同时隐藏容器,如下所示:

enter image description here

在滑动结束并测量滑动距离后,我该怎么做。顶部栏应向下或向上固定,而不应介于两者之间。我如何对其进行动画处理以使其类似于现在。我尝试过onVerticalDrag等,但我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

Flutter Slivers可以为您做到这一点。

检查以下代码:

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body:NestedScrollView(
          headerSliverBuilder: (BuildContext context, bool _) {
            return <Widget>[
              SliverAppBar(
                expandedHeight: 200.0,
                floating: true,
                pinned: true,
                snap: true,
                flexibleSpace: FlexibleSpaceBar(
                  centerTitle: true,
                  title: Text("Collapsing Toolbar",
                    style: TextStyle(
                      color: Colors.white,
                      fontSize: 16.0,
                    ),
                  ),
                ),
              ),
            ];
          },
          body: Center(
            child: Text("My Fancy Text"),
          ),
        ),
      ),
    );
  }
}