【发布时间】:2020-11-01 18:01:48
【问题描述】:
我在每个插件的官方文档的帮助下编写了代码。尽管如此,我收到了下面提到的错误。任何人都可以帮助解决问题吗?
import 'dart:html';
import 'package:flutter/material.dart';
import 'package:flutter/semantics.dart';
import 'package:path/path.dart';
import 'package:photofilters/photofilters.dart';
import 'package:image_picker/image_picker.dart';
import 'package:image/image.dart' as imageLib;
class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
File _image;
String fileName;
Filter _filter;
List<Filter> filters = presetFiltersList;
final picker = ImagePicker();
Future getImage() async {
final pickedFile = await picker.getImage(source: ImageSource.gallery);
fileName = basename(pickedFile.path);
var image = imageLib.decodeImage(pickedFile.readAsBytesSync());
setState(() {
if (pickedFile != null) {
_image = File(pickedFile.path);
} else {
print('No image selected.');
}
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
floatingActionButton: FloatingActionButton.extended(
onPressed: () {
getImage();
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => PhotoFilterSelector(
image: _image,
filters: filters,
filename: fileName,
loader: Center(child: CircularProgressIndicator()),
),
));
},
label: Text("+"),
icon: Icon(
Icons.print,
color: Colors.black,
),
),
);
}
}
错误:
-
没有为“PickedFile”类型定义“readAsBytesSync”方法。 尝试将名称更正为现有方法的名称,或定义名为“readAsBytesSync”的方法。
-
需要 2 个位置参数,但找到了 1 个。 尝试添加缺少的参数。
3.参数类型'String'不能赋值给参数类型'List'。
- 无法将参数类型“文件”分配给参数类型“图像”。
【问题讨论】:
标签: flutter filter photo editing