Flutter Widget之SnackBar

SnackBar是用户操作后,显示提示信息的一个控件,类似Toast,会自动隐藏。SnackBar还可以添加操作按钮。SnackBar是通过Scaffold的showSnackBar方法来显示的。

Widget:https://flutter.io/docs/development/ui/widgets
SnackBar:https://docs.flutter.io/flutter/material/SnackBar-class.html
     

import 'package:flutter/material.dart';

class SnackBarDemoPage extends StatefulWidget {
  @override
  State<StatefulWidget> createState() => new _SnackBarDemoPageState();
}

class _SnackBarDemoPageState extends State<SnackBarDemoPage> {

  @override
  void initState() {
    super.initState();
  }

  Widget build(BuildContext context) {
    return Scaffold(
        appBar: new AppBar(
          title: new Text('SnackBar Demo'),
        ),
        floatingActionButton: new Builder(builder: (BuildContext context) {
          return new FloatingActionButton(
            onPressed: () {
              // SnackBarBuilder.showSnackBar(context);
              SnackBarBuilder.showAlertSnackBar(context);
            },
            child: new Icon(Icons.add),
          );
        }),
//        body: Center(
//          child: Text('SnackBar'),
//        )
        body: new Builder(builder: (BuildContext context) {
          return new Center(
            child: new GestureDetector(
              onTap: () {
                final snackBar = new SnackBar(content: new Text('这是一个SnackBar'));
                Scaffold.of(context).showSnackBar(snackBar);
              },
              child: new Text('显示SnackBar'),
            ),
          );
        })
    );
  }
}

class SnackBarBuilder {
  static void showSnackBar(BuildContext context) {
    final snackBar = new SnackBar(content: new Text('这是一个SnackBar!'));
    Scaffold.of(context).showSnackBar(snackBar);
  }

  static void showAlertSnackBar(BuildContext context) {
    final snackBar = new SnackBar(
      content: new Text('删除信息'),
      action: new SnackBarAction(
          label: '撤消',
          onPressed: () {
            // do something to undo
          }
      ),
    );
    Scaffold.of(context).showSnackBar(snackBar);
  }
}

Flutter Widget SnackBar

上一篇 Flutter Widget之Dialog
下一篇 Flutter Widget之Tooltip
目录
文章列表
1 Kibana添加filter
Kibana添加filter
2
Android TextView文字倾斜
Android TextView文字倾斜
3
安装Kubernetes高可用
安装Kubernetes高可用
4
Spring Boot使用@Async异步注解导致该Bean在循环依赖时启动报BeanCurrentlyInCreationException异常
Spring Boot使用@Async异步注解导致该Bean在循环依赖时启动报BeanCurrentlyInCreationException异常
5
Flutter中使用WebView加载本地Html文件
Flutter中使用WebView加载本地Html文件
最新评论
一位WordPress评论者
一位WordPress评论者
2月12日
您好,这是一条评论。若需要审核、编辑或删除评论,请访问仪表盘的评论界面。评论者头像来自 Gravatar。