Flutter Toast插件选择(2019/07/20)


Screenshot_1563616909.png

警告

这是Web工程师用一只手用颤抖创建一个糟糕的应用程序时的备忘录。
请了解,某些信息可能不符合该应用程序的指南。

截至2019年7月18日的Toast插件类型

  • 吐司
  • 吐司
  • flutter_just_toast
  • 土司

如果使用Toast搜索

pub.dev,则以上4种类型将显示在顶部。
Flutter_just_toast已有半年没有更新了,所以最好停止它。
易于使用的是土司面包/扑吐土司,最可定制的是土司面包。

总之,我们采用了oktoast。

这次,作为备忘录,我将介绍采用和简单用法的原因。

采用原因

要求如下。

  • 可以使用的屏幕没有限制
  • 可以针对每个屏幕推出
  • 我想连续显示,所以我想尽可能缩短显示时间。
  • 我想自定义字体

吐司面包/扑打吐司面包满足以上两个要求,但

  • 显示时间只能从短/长两个值中选择。
  • 对于字体,您只能选择颜色和大小

由于它是

的规范,因此未采用。
相反,如果您想简单地实现烤面包,那么烤面包/颤抖烤面包会更好。

使用方法(吐司吐司VS吐司吐司)

每个方法的摘录

fluttertoast

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import 'package:fluttertoast/fluttertoast.dart';

class _okToastExampleState extends State<okToastExample> {
  @override
  void initState() {
    super.initState();
  }

  showToast() {
    Fluttertoast.showToast(
      msg: "This is Center Short Toast",
      toastLength: Toast.LENGTH_SHORT,
      gravity: ToastGravity.CENTER,
      timeInSecForIos: 1,
      backgroundColor: Colors.red,
      textColor: Colors.white,
      fontSize: 16.0
    );
  }

  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      child: Text('Tap!!!'),
      onTap: () {
        showToast();
      },
    );
  }
}

由于可以这样调用,因此无论场景如何,它都非常易于使用。
对于烤面包,您不能在参数中不包括上下文等,因此您可能无法想到它,但是使用场景可能会受到限制。

oktoast

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
class _okToastExampleState extends State<okToastExample> {
  @override
  void initState() {
    super.initState();
  }

  showOkToast() {
    showToast(
      'oktoast',
      duration: Duration(seconds: 1),
      position: ToastPosition.bottom,
      backgroundColor: Colors.black.withOpacity(0.5),
      radius: 13.0,
      textStyle: TextStyle(
        fontSize: 16.0,
        color: Colors.white,
      ),
    );
  }

  @override
  Widget build(BuildContext context) {
    return OKToast( //OKToastで囲う
      child: GestureDetector(
        child: Text('Tap!!!'),
        onTap: () {
          showOkToast();
        },
      ),
    );
  }
}

oktoast也很简单,但是您必须将其封装在OKToast的小部件中。
该示例显示\\"用OKToast包装您的应用程序\\"并将整个MaterialApp包围起来,但是无论您是单独将其包围起来,还是包装多个其他小部件,都可以正常工作。
如果要自定义字体和显示时间,这是一个选项,请使用它。

概括

  • 如果只是快速放入,请吐司
  • 如果要自定义Oktoast