颤振类型错误future <dynamic> 不是future <bool> 类型的子类型

Posted

技术标签:

【中文标题】颤振类型错误future <dynamic> 不是future <bool> 类型的子类型【英文标题】:flutter type error future <dynamic> is not a subtype of type future <bool> 【发布时间】:2020-01-01 14:31:19 【问题描述】:

因此,当我离开 Hero 小部件时,我试图停止正在播放的声音,但 _stop() 方法导致标题中出现异常

Future _stop() async
    var result = await flutterTts.stop();
    if (result == 1) setState(() => ttsState = TtsState.stopped);


@override
Widget build(BuildContext context) 
    return WillPopScope(
        child: Scaffold(),
        onWillPop: ()
            return _stop();
        ,
    );

【问题讨论】:

【参考方案1】:

onWillPop 属性采用 Future 类型的 bool。尝试在 _stop 函数的末尾返回 bool

Future<bool> _stop() async
var result = await flutterTts.stop();
if (result == 1) setState(() => ttsState = TtsState.stopped);
return true; // returning bool

【讨论】:

以上是关于颤振类型错误future <dynamic> 不是future <bool> 类型的子类型的主要内容,如果未能解决你的问题,请参考以下文章

错误:类型“Future<dynamic>”不是“List<dynamic>”类型的子类型。扑

错误颤振:List<dynamic> 不是 Map<String, dynamic> 类型的子类型

类型 'List<dynamic>' 不是类型 'Map<String, dynamic>' 的子类型在颤振应用程序中出现此错误

Flutter 通过查询 Firestore 创建自定义用户模型给出“类型‘Future<dynamic>’不是‘String’类型的子类型”错误

颤振错误:预期类型为“FutureOr<List<dynamic>>”的值,但得到类型为“_JsonMap”的值之一

参数类型“User”不能分配给参数类型“Future<dynamic>”。? [复制]