Mah*_*ari 0 memory store image sharedpreferences flutter
我们如何将图像存储在共享首选项中并在颤振中从共享首选项中检索图像?
小智 10
您可以将图像转换为Unit8List,然后将UnitList8转换为base64并保存。这是一个例子。
static Future<bool> saveImage(List<int> imageBytes) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
String base64Image = base64Encode(imageBytes);
return prefs.setString("image", base64Image);
}
static Future<Image> getImage() async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
Uint8List bytes = base64Decode(prefs.getString("image"));
return Image.memory(bytes);
}
Run Code Online (Sandbox Code Playgroud)
然后使用它。
来自资产
ByteData bytes = await rootBundle.load('assets/file');
SharedPreferencesHelper.saveImage(bytes.buffer.asUint8List());
Run Code Online (Sandbox Code Playgroud)
来自网络
http.Response response = await http.get(
'https://flutter.io/images/flutter-mark-square-100.png',
);
if(response.statusCode == 200){
SharedPreferencesHelper.saveImage(response.bodyBytes);
}else{
//TODO: Handle error
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5776 次 |
| 最近记录: |