我对Flutter和Dart都是新手,我正在尝试使用相机插件来了解事情的运作方式。我发现的所有示例都有这部分:
List<CameraDescription> cameras;
Future<Null> main() async {
cameras = await availableCameras();
runApp(new CameraApp());
}
有没有办法在 initState()
方法内完成此操作?我猜这也是关于在运行initState
方法之前所需的异步工作的一般性问题。(因为initState
方法不能是异步的)。
我的目标是创建一个包含摄像头反馈的 StatefulWidget
,并从另一个文件中使用它。以下是我目前拥有的内容。任何帮助都将不胜感激!
List<CameraDescription> cameras;
@override
void initState() {
super.initState();
getCameras();
controller = new CameraController(cameras[0], ResolutionPreset.medium);
controller.initialize().then( (_) {
if (!mounted) {
return;
}
setState(() {});
});
}
Future<Null> getCameras() async {
cameras = await availableCameras();
}