Flutter消息提示插件m_toast的使用

发布于 1周前 作者 wuwangju 来自 Flutter

Flutter消息提示插件m_toast的使用

MToast 是一个用于Flutter的消息提示插件,支持在多种平台上显示自定义的Toast消息。

支持的平台

  • Android
  • iOS
  • Linux
  • MacOS
  • Windows

功能特性

  • 添加带有自定义图标、颜色和消息的Toast。
  • 添加带有自定义图片、颜色和消息的Toast。

开始使用

1. 添加依赖

首先,在你的pubspec.yaml文件中添加以下依赖:

dependencies:
  m_toast: ^0.2.4

然后运行flutter pub get以安装新添加的包。

2. 导入库

在需要使用的Dart文件中导入该库:

import 'package:m_toast/m_toast.dart';

3. 调用Toast

下面是如何调用成功和错误类型的Toast的例子:

ShowMToast toast = ShowMToast(context);

toast.successToast(message: "Hello");
toast.errorToast(message: "Hello");

自定义Toast示例

以下是一个完整的示例Demo,展示如何使用MToast插件来显示带有自定义图片和样式的Toast消息。

import 'package:flutter/material.dart';
import 'package:m_toast/m_toast.dart';

void main() {
  runApp(MaterialApp(home: const MyApp()));
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'M Toast Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Flutter M Toast Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  ShowMToast toast = ShowMToast(GlobalContext.getContext());

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            OutlinedButton(
              onPressed: () {
                toast.successToast(
                  message: "Message Sent",
                  image: "assets/twitter_logo.png", // 确保此路径存在
                  backgroundColor: Colors.white,
                  alignment: Alignment.topCenter,
                  duration: 1500,
                );
              },
              child: const Text("Show Success Toast"),
            ),
            OutlinedButton(
              onPressed: () {
                toast.errorToast(
                  message: "Message not Send",
                  image: "assets/twitter_logo.png", // 确保此路径存在
                  backgroundColor: Colors.white,
                  alignment: Alignment.topCenter,
                );
              },
              child: const Text("Show Error Toast"),
            ),
          ],
        ),
      ),
    );
  }
}

class GlobalContext {
  static BuildContext getContext() {
    return NavigationService.navigatorKey.currentContext!;
  }
}

class NavigationService {
  static GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();
}

确保你已经将所需的图片(例如twitter_logo.png)放置在assets目录下,并在pubspec.yaml中正确声明了这些资源。

通过以上步骤,你应该能够在你的Flutter应用中轻松集成并使用MToast插件来显示各种类型的Toast消息。希望这个示例能帮助你更好地理解和使用MToast插件!


更多关于Flutter消息提示插件m_toast的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter消息提示插件m_toast的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


当然,以下是如何在Flutter项目中使用m_toast插件来实现消息提示功能的示例代码。m_toast是一个流行的Flutter插件,用于显示简单的消息提示。

1. 添加依赖

首先,你需要在pubspec.yaml文件中添加m_toast的依赖:

dependencies:
  flutter:
    sdk: flutter
  m_toast: ^2.0.0  # 请确保使用最新版本,版本号可以根据pub.dev上的最新版本进行调整

然后运行flutter pub get来获取依赖。

2. 导入插件

在你需要使用消息提示的地方导入m_toast插件:

import 'package:m_toast/m_toast.dart';

3. 使用MToast

以下是如何在Flutter应用中使用MToast的简单示例:

import 'package:flutter/material.dart';
import 'package:m_toast/m_toast.dart';

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

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Flutter Toast Demo'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            ElevatedButton(
              onPressed: () {
                // 显示简单的消息提示
                MToast.show(msg: "Hello, World!", position: ToastPosition.bottom);
              },
              child: Text('Show Toast Bottom'),
            ),
            SizedBox(height: 20),
            ElevatedButton(
              onPressed: () {
                // 显示带有自定义持续时间的消息提示
                MToast.show(
                  msg: "This toast will last for 3 seconds",
                  position: ToastPosition.center,
                  duration: ToastDuration.lengthLong,
                  gravity: ToastGravity.filled,
                  backgroundColor: Colors.red,
                  textColor: Colors.white,
                );
              },
              child: Text('Show Toast Center (Long)'),
            ),
          ],
        ),
      ),
    );
  }
}

4. 配置参数

在上面的代码中,MToast.show方法接受多个参数,允许你自定义消息提示的外观和行为:

  • msg: 要显示的文本消息。
  • position: 消息提示的位置,可以是ToastPosition.topToastPosition.bottomToastPosition.center
  • duration: 消息提示的持续时间,可以是ToastDuration.lengthShortToastDuration.lengthLong
  • gravity: 消息提示的填充类型,可以是ToastGravity.centeredToastGravity.filled
  • backgroundColor: 消息提示的背景颜色。
  • textColor: 消息提示的文本颜色。

5. 运行应用

确保所有代码正确无误后,运行你的Flutter应用。点击按钮时,你应该能够看到不同位置和样式的消息提示。

这样,你就成功地在Flutter应用中使用m_toast插件实现了消息提示功能。希望这对你有帮助!

回到顶部