首页 > 解决方案 > 在 API 级别 30 之后,您的应用程序中还能以某种方式使用 toast 吗?

问题描述

我一直在使用 fluttertoast 包将用户消息显示为 toast。但是,自从在 Flutter 中实现 API 级别 30 后,使用 setView 方法自定义 toast 已经过时了。从那时起,我尝试切换到 Flutter 原生小吃店,自定义它们以实现类似于吐司的效果,如下所示:

ScaffoldMessenger.of(context).showSnackBar(new SnackBar(
  content: Text(
    'Parabéns! Você está participando deste evento!',
    style: TextStyle(fontSize: 18),
    textAlign: TextAlign.center,
  ),
  behavior: SnackBarBehavior.floating,
  shape: RoundedRectangleBorder(
    borderRadius: BorderRadius.circular(24),
  ),
  duration: Duration(seconds: 2),
  backgroundColor: Colors.green[300],
  margin: EdgeInsets.only(
      bottom: MediaQuery.of(context).size.height / 8, right: 40, left: 40),
));

然而,这个解决方案并不完美,因为快餐栏会阻止用户与其下方的任何东西进行交互。发生这种情况是因为根据我的自定义,有一个边距将小吃店推高。我没有成功地尝试寻找替代方案,查看这些帖子:

截至目前,吐司似乎没有有效的替代品。我错了吗?有没有办法至少在 API 级别 30 之后模仿 toast 的行为?

提前感谢您的任何意见。

标签: androidflutterdart

解决方案


推荐阅读