当前位置: 首页 > wzjs >正文

网页设计制作一个餐饮网站专业网站快速

网页设计制作一个餐饮网站,专业网站快速,做脚垫版型的网站,小程序商店app目录 一、Snackbar 1. Snackbar 简介 2. Snackbar 的基本使用 3. 自定义 Snackbar 4. 使用 ScaffoldMessenger 更灵活地管理 Snackbar 二、Toast 使用方法 1. 添加依赖 2. 显示 Toast 消息 三、注意事项 相关推荐 在 Flutter 中,SnackBar 是 Material Des…

目录

一、Snackbar

1. Snackbar 简介

2. Snackbar 的基本使用

3. 自定义 Snackbar

4. 使用 ScaffoldMessenger 更灵活地管理 Snackbar

二、Toast 使用方法

1. 添加依赖

2. 显示 Toast 消息

三、注意事项

相关推荐


        在 Flutter 中,SnackBar 是 Material Design 风格的轻量级消息提示组件,而 Toast 则是 Android 平台特有的提示方式。

一、Snackbar

1. Snackbar 简介

        Snackbar 是一种轻量级消息提示组件,通常出现在屏幕底部,用于向用户提供简要反馈,常见于操作成功提示、警告或错误通知等。

2. Snackbar 的基本使用

        要显示一个 Snackbar,最简单的方法是使用 ScaffoldMessenger.of(context).showSnackBar()

import 'dart:io';import 'package:flutter/material.dart';
import 'package:permission_handler/permission_handler.dart';class ScSnackBarPage extends StatefulWidget {const ScSnackBarPage({super.key});@overrideState<ScSnackBarPage> createState() => _ScSnackBarPageState();
}class _ScSnackBarPageState extends State<ScSnackBarPage> {@overrideWidget build(BuildContext context) {return Scaffold(body: Column(//垂直布局children: [SizedBox(height: 40,),ElevatedButton(onPressed: () => _showSnackbar(),child: const Text('弹出提示'),),]));}void _showSnackbar(){ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('操作成功!'),duration: Duration(seconds: 2), // 显示时长),);}
}

3. 自定义 Snackbar

        可以通过以下方式自定义 Snackbar 的外观和行为:

SnackBar customSnackBar = SnackBar(content: Text('网络连接失败', style: TextStyle(color: Colors.white)),backgroundColor: Colors.red,action: SnackBarAction(label: '重试',textColor: Colors.white,onPressed: () {// 处理重试逻辑},),
);
ScaffoldMessenger.of(context).showSnackBar(customSnackBar);

4. 使用 ScaffoldMessenger 更灵活地管理 Snackbar

        Flutter 2.0 之后,推荐使用 ScaffoldMessenger 来管理 Snackbar,而不是 Scaffold.of(context)

.....
class _ScSnackBarPageState extends State<ScSnackBarPage> {final messengerKey = GlobalKey<ScaffoldMessengerState>();@overrideWidget build(BuildContext context) {return MaterialApp(scaffoldMessengerKey: messengerKey,home: Scaffold(body: Column(//垂直布局children: [ElevatedButton(onPressed: () {messengerKey.currentState?.showSnackBar(SnackBar(content: Text('使用 ScaffoldMessengerKey 显示')),);},child: const Text('弹出 ScaffoldMessengerKey 提示'),),],),),);}
}

二、Toast 使用方法

        Flutter 本身没有内置 Toast,但可以使用第三方库 fluttertoast。

1. 添加依赖

        在 pubspec.yaml 中添加:

dependencies:fluttertoast: ^8.2.2

        然后运行 flutter pub get 安装依赖。

2. 显示 Toast 消息

import 'package:fluttertoast/fluttertoast.dart';Fluttertoast.showToast(msg: "这是一个 Toast 提示",toastLength: Toast.LENGTH_SHORT, // 时长gravity: ToastGravity.BOTTOM, // 位置timeInSecForIosWeb: 1, // iOS/web 上的显示时长backgroundColor: Colors.black54,textColor: Colors.white,fontSize: 16.0
);

        调用 showToast() 方法即可在界面上显示 Toast 提示。

三、注意事项

  1. 对于 Toast,Android 和 iOS 上的显示效果可能略有不同

  2. 在 Flutter 中,通常推荐使用 SnackBar 以获得更好的跨平台一致性

简单封装示例:

class ToastUtil {static void showSnackBar(BuildContext context, String message) {ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text(message)),);}static void showToast(String message) {Fluttertoast.showToast(msg: message,toastLength: Toast.LENGTH_SHORT,gravity: ToastGravity.BOTTOM,);}
}// 使用
ToastUtil.showSnackBar(context, "操作成功");
ToastUtil.showToast("操作成功");

相关推荐

Flutter setState() 状态管理详细使用指南-CSDN博客文章浏览阅读1.7k次,点赞53次,收藏49次。在 Flutter 开发中,setState() 是管理 Widget 状态变化最基础的方法。它用于更新 StatefulWidget 中的 UI,使 Flutter 重新构建该 Widget 及其子组件。本文将详细介绍 setState() 的基本原理、使用方法,并通过代码示例展示如何正确使用 setState() 进行状态更新。此外,我们还会探讨 setState() 的局限性,以及在复杂应用中可能需要的更高级状态管理方案。 https://shuaici.blog.csdn.net/article/details/146083853Flutter Container 组件详解-CSDN博客文章浏览阅读728次,点赞33次,收藏19次。Container是Flutter中最常用的多功能布局组件,集尺寸控制、装饰效果、对齐方式等多种功能于一体。它能设置固定尺寸或约束范围,添加背景色、圆角、阴影等装饰效果,控制内外边距,实现子组件对齐和旋转变换,还能制作卡片、圆形头像等复杂UI。 https://shuaici.blog.csdn.net/article/details/146083818

http://www.dtcms.com/wzjs/793220.html

相关文章:

  • 贵州建设厅监理协会网站工商网上注册营业执照
  • 网站建设岗位能力制作微网站的平台有哪些
  • 学校网站建设总结报告太原站扩建
  • 网站建设图总结专业提供网站建设服务公司
  • 拟定一个农产品电商网站的建设需求建筑资料网站大全
  • 电子商务学校网站建设网站制作架构
  • 用自己照片做衣服 杯子的是哪个网站做网站需要什么系统
  • 网站自己可以备案吗石家庄城市建设投资中心网站
  • 上海制造网站公司西安在线
  • 电子商务网站建设思维导图做网站色弱可以吗
  • 一个网站的成功百度推广合作
  • 凡科建站怎么做微网站做网站的服务器用什么系统
  • 深圳网站优化运营怎么做网站描述
  • 做网站运维应该看的书wordpress一键变灰色
  • 龙岩网站建设有没有专门做游戏辅助的网站
  • 成都电商网站58同城通辽做网站
  • 西安市高新区建设规划局网站淮南网站制作
  • 网站建设厘金手指下拉12番禺网站建设策划
  • 福建建设厅安全员报名网站公司企业墙设计
  • 利用模板如何制作网站莱芜在线话题莱芜拉呱
  • html购物网站源代码莱芜在线论坛莱芜话题凤城高中
  • 网站都需要备案吗重生做皇帝小说网站
  • 一个完整的企业网站网站推广的作用是
  • 聊城网站建设费用新闻聚合网站开发 技术
  • 公司网站开发需要什么证书简单的企业网站
  • 有经验的顺德网站建设做网站得花多钱
  • 网站调用优酷视频去除广告iis如何做网站管理器
  • 微信公众号(网站建设)合同平台推广方案
  • 宠物网站开发文档编程培训心得
  • 互联网定制开发seo优化师是什么