Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 我想在SharedReferences中添加图像路径,但不要';我不知道该怎么办_Image_Flutter_Dart_Sharedpreferences_Flutter Futurebuilder - Fatal编程技术网

Image 我想在SharedReferences中添加图像路径,但不要';我不知道该怎么办

Image 我想在SharedReferences中添加图像路径,但不要';我不知道该怎么办,image,flutter,dart,sharedpreferences,flutter-futurebuilder,Image,Flutter,Dart,Sharedpreferences,Flutter Futurebuilder,我写了一个函数,返回图像列表并在ListView中使用,但我还想为每个图像创建文件,并将该文件路径存储在SharedReferences中 import'package:image/image.dart'作为imglib; Future _getListOfImages()异步{ 最终dy=widget.dyCoordinate; //将图像分割为多个部分 列表图像=[]; 用于(var img部分){ Image.add(Image.memory(imglib.encodeJpg(img));

我写了一个函数,返回图像列表并在ListView中使用,但我还想为每个图像创建文件,并将该文件路径存储在SharedReferences中

import'package:image/image.dart'作为imglib;
Future _getListOfImages()异步{
最终dy=widget.dyCoordinate;
//将图像分割为多个部分
列表图像=[];
用于(var img部分){
Image.add(Image.memory(imglib.encodeJpg(img));
}
返回图像;
}
@凌驾
小部件构建(构建上下文){
返回脚手架(
底板:吸收点(
吸引人的是:,
子:容器(
边距:所有边集(0),
对齐:对齐.bottomCenter,
身高:48,
颜色:颜色。黑色87,
孩子:巴顿巴(
对齐:MainAxisAlignment.center,
mainAxisSize:mainAxisSize.max,
buttonMinWidth:MediaQuery.of(context).size.width/2.2,
儿童:[
扁平按钮(
子:文本(
“录制音频”,
样式:TextStyle(颜色:Colors.white70,fontSize:16),
),
//颜色:颜色。黑色45,
已按下:(){
_showMyDialog();
},
),
扁平按钮(
子:文本(
“选择音频”,
样式:TextStyle(颜色:Colors.white70,fontSize:16),
),
//颜色:颜色。黑色45,
按下:(){/***/},
),
],
),
)),
背景颜色:Colors.black,
浮动操作按钮:浮动操作按钮(
按下:(){},
子:图标(图标。检查),
),
正文:未来建设者(
future:_getListOfImages(),//异步工作
生成器:(上下文,快照){
交换机(快照.连接状态){
案例连接状态。无:
案例连接状态。正在等待:
案例连接状态.active:
返回容器(
对齐:对齐.center,
子对象:循环压缩机指示器(
背景颜色:颜色。琥珀色[50],
),
);
打破
案例连接状态。完成:
if(snapshot.hasError){
//返回您对此案例所做的任何操作,可能是一个错误
返回容器(
对齐:对齐.center,
子项:文本(“错误:${snapshot.Error}”),
);
}
var data=snapshot.data;
返回ListView.builder(
反面:错,
itemBuilder:(_,int index)=>ListTile(
是的,
onTap:(){
设置状态(){
_isEnable=!\u isEnable;
});
},
标题:集装箱(
边距:常数边集全部(0),
子项:数据[索引],
),
),
itemCount:data.length,
);
打破
}
},
),
);
}
实际上,我想实现裁剪器,它根据一些坐标和存储在
widget.dyCoordinate
中的坐标分割图像,并在裁剪存储在'parts'中的图像后使用
copyCrop()
中的'image'库,然后将图像库中的部分图像编码为flatter图像并返回图像列表


你的人知道如何将每个图像保存到设备上的某个位置,或者在存储后将文件保存到SharedReferences的路径中,如果你想存储多个图像的路径,那么你必须使用json.encode,这样它将转换为字符串,然后你可以将其存储在共享首选项中

SharedReferences.setString(key,json.encode(value))

但最好使用任何本地数据库,如sqlite()或hive()。

SharedReferences.setString(键,值)