一尘不染

如何实现从左侧滑动的侧边菜单?

flutter

我是Flutter的新手,刚刚完成了入门教程。我想创建一个侧面菜单,当您滑动时该菜单会从左侧显示(例如Android上的Gmail)。

不幸的是,我在文档中找不到这样的布局,而flutter画廊中的示例有点混乱。

有人可以解释一下如何实现这种小部件吗?


阅读 292

收藏
2020-08-13

共1个答案

一尘不染

这是一个简单抽屉的示例(我刚刚从改编了默认项目设置flutter create):

import 'package:flutter/material.dart';

void main() {
  runApp(new MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      title: 'Flutter Demo',
      home: new MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {

  @override
  _MyHomePageState createState() => new _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: new AppBar(
        title: new Text('TestProject'),
      ),
      drawer: new Drawer(
        child: new ListView(
          children: <Widget> [
            new DrawerHeader(child: new Text('Header'),),
            new ListTile(
              title: new Text('First Menu Item'),
              onTap: () {},
            ),
            new ListTile(
              title: new Text('Second Menu Item'),
              onTap: () {},
            ),
            new Divider(),
            new ListTile(
              title: new Text('About'),
              onTap: () {},
            ),
          ],
        )
      ),
      body: new Center(
        child: new Text(
          'Center',
        ),
      ),
    );
  }
}

文档是一个很好的起点;)

顺便说一句:在脚手架中包括一个抽屉,还可以照顾菜单按钮和向左滑动的手势。

2020-08-13