美文网首页
Flutter GetX基础教程(二): Snackbar使用

Flutter GetX基础教程(二): Snackbar使用

作者: kadis | 来源:发表于2021-10-29 09:03 被阅读0次

    如果想在应用程序中触发某些特定的事件后,需要弹出一则快捷消息,那么使用Snackbar则是最佳的选择,接下来我们看一下GetX如何来联调Snackbar来使用。

    Snackbar基本使用

    第一步:应用程序入口设置

    当我们导入依赖后,在应用程序顶层把GetMaterialApp 作为顶层

    import 'package:flutter/material.dart';
    import 'package:get/get.dart';
    
    void main() {
      runApp(MyApp());
    }
    
    class MyApp extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return GetMaterialApp(
          title: "GetX",
          home: Scaffold(
            appBar: AppBar(title: Text("GetX Title"),),
          ),
        );
      }
    }
    

    第二步:调用snackbar
    我们可以通过Get.snackbar() 来显示 snackbar ,如下所示

    import 'package:flutter/material.dart';
    import 'package:get/get.dart';
    
    void main() {
      runApp(MyApp());
    }
    
    class MyApp extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return GetMaterialApp(
          title: "GetX",
          home: Scaffold(
            appBar: AppBar(
              title: Text("GetX Title"),
            ),
            body: Center(
              child: Column(
                mainAxisAlignment: MainAxisAlignment.center,
                crossAxisAlignment: CrossAxisAlignment.center,
                children: [
                  ElevatedButton(
                    onPressed: () {
                      Get.snackbar("Snackbar 标题", "欢迎使用Snackbar");
                    },
                    child: Text("显示 Snackbar"))
                ],
              ),
            ),
          ),
        );
      }
    }
    

    效果展示
    如果您运行了代码,那么恭喜你,你已经会用GetX 来展示snackbar 了。你将得到下面的结果:


    image

    Snackbar属性和说明
    总共38个属性,

    字段 属性 描述
    title String 弹出的标题文字
    message String 弹出的消息文字
    colorText Color title和message的文字颜色
    duration Duration Snackbar弹出的持续时间(默认3秒)
    instantInit bool 当false可以把snackbar 放在initState,默认true
    snackPosition SnackPosition 弹出时的位置,有两个选项【TOP,BOTTOM】默认TOP
    titleText Widget 弹出标题的组件,设置该属性会导致title属性失效
    messageText Widget 弹出消息的组件,设置该属性会导致messageText属性失效
    icon Widget 弹出时图标,显示在title和message的左侧
    shouldIconPulse bool 弹出时图标是否闪烁,默认false
    maxWidth double Snackbar最大的宽度
    margin EdgeInsets Snackbar外边距,默认zero
    padding EdgeInsets Snackbar内边距,默认EdgeInsets.all(16)
    borderRadius double 边框圆角大小,默认15
    borderColor Color 边框的颜色,必须设置borderWidth,否则无效果
    borderWidth double 边框的线条宽度
    backgroundColor Color Snackbar背景颜色,默认Colors.grey.withOpacity(0.2)
    leftBarIndicatorColor Color 左侧指示器的颜色
    boxShadows List Snackbar阴影颜色
    backgroundGradient Gradient 背景的线性颜色
    mainButton TextButton 主要按钮,一般显示发送、确认按钮
    onTap OnTap 点击Snackbar事件回调
    isDismissible bool 是否开启Snackbar手势关闭,可配合dismissDirection使用
    showProgressIndicator bool 是否显示进度条指示器,默认false
    dismissDirection SnackDismissDirection Snackbar关闭的方向
    progressIndicatorController AnimationController 进度条指示器的动画控制器
    progressIndicatorBackgroundColor Color 进度条指示器的背景颜色
    progressIndicatorValueColor Animation 进度条指示器的背景颜色,Animation
    snackStyle SnackStyle Snackbar是否会附加到屏幕边缘
    forwardAnimationCurve Curve Snackbar弹出的动画,默认Curves.easeOutCirc
    reverseAnimationCurve Curve Snackbar消失的动画,默认Curves.easeOutCirc
    animationDuration Duration Snackbar弹出和小时的动画时长,默认1秒
    barBlur double Snackbar背景的模糊度
    overlayBlur double 弹出时的毛玻璃效果值,默认0
    snackbarStatus SnackbarStatusCallback Snackbar弹出或消失时的事件回调(即将打开、已打开、即将关闭、已关闭)
    overlayColor Color 弹出时的毛玻璃的背景颜色
    userInputForm Form 用户输入表单
    转自:https://liujunmin.com/

    相关文章

      网友评论

          本文标题:Flutter GetX基础教程(二): Snackbar使用

          本文链接:https://www.haomeiwen.com/subject/zvamaltx.html