我正在向我的PhotoPreviewScreen
一旦照片在我这里拍摄camera
通过此按钮页面:
onPressed: () async {
var result = await controller.takePicture();
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => PhotoPreviewScreen(
imagePath: result.path,
但是,我希望能够将其从我的网格视图发送到我的主页PhotoPreview Screen
单击此按钮后:
OutlineButton(
onPressed: () async {
var result = widget.imagePath;
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => PhotoPreviewScreen(
imagePath: result.path,
然而,这并不成功。我试图定义这些元素PhotoPreview Screen
通过这些项目
class _PhotoPreviewScreenState extends State<PhotoPreviewScreen> {
var image;
String imgPath;
Future _openGallery() async {
if (widget.setData != null) {
widget.setData(File(image.path));
}
}
我哪里出错了,如何重构这段代码?
总而言之,流程是:
- 将拍摄的照片发送至
PhotoPreviewScreen
(完全的)
- 拍摄照片开启
PhotoPreviewScreen
(完全的)
- 将照片发送至
GridView
on my Homepage
单击上面指定的按钮后(需要指导)
这里是GridView
我需要在单击按钮时将图像发送到它
: GridView.count(
shrinkWrap: true,
crossAxisCount: 2,
crossAxisSpacing: 25,
mainAxisSpacing: 25,
childAspectRatio: (80 / 150),
padding: const EdgeInsets.all(2.0),
children:
List.generate(widget.imageArray.length, (index) {
return Container(
decoration: new BoxDecoration(
color: const Color(0xff000000),
borderRadius: BorderRadius.circular(10),
image: new DecorationImage(
image: FileImage(widget.imageArray[index]),
fit: BoxFit.fill,
colorFilter: new ColorFilter.mode(
Colors.black.withOpacity(0.4),
BlendMode.dstATop)
除了上述内容之外,这里还有相关的主页:
class Homepage extends StatefulWidget {
final List<File> imageArray;
Homepage({Key key, this.imageArray}) : super(key: key);
@override
_HomepageState createState() => _HomepageState();
}
class _HomepageState extends State<Homepage> {
var image;