我的flutter应用程序创建了一个Utility类,并希望在不同的文件/页面中使用Utility类中的函数。但是Utility类的async函数不能被其他文件调用。请帮助解决这个问题。
import 'package:flutter/material.dart';
import 'package:connectivity/connectivity.dart';
import 'dart:async';
class Utility {
ConnectivityResult connectivityResult;
Future<bool> checkConnection() async{
connectivityResult = await (new Connectivity().checkConnectivity());
if ((connectivityResult == ConnectivityResult.mobile) || (connectivityResult == ConnectivityResult.wifi)){
return true;
} else {
return false;
}
}
static void showAlert(BuildContext context, String text) {
var alert = new AlertDialog(
content: Container(
child: Row(
children: <Widget>[Text(text)],
),
),
actions: <Widget>[
new FlatButton(
onPressed: () => Navigator.pop(context),
child: Text(
"OK",
style: TextStyle(color: Colors.white),
))
],
);
showDialog(
context: context,
builder: (_) {
return alert;
});
}
}
最佳答案
在您的函数上使用static
关键字static Future<bool> checkConnection()
或实例化您的实用程序类
关于asynchronous - Flutter创建一个Utility类,但是不能调用异步函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52475864/