mod: 图片预览页面样式

This commit is contained in:
guozhigq
2023-08-20 20:34:25 +08:00
parent cc8753e8de
commit 8f84c6a6f9
3 changed files with 85 additions and 61 deletions

View File

@ -2,11 +2,9 @@ import 'dart:io';
import 'package:device_info_plus/device_info_plus.dart';
import 'package:get/get.dart';
import 'dart:typed_data';
import 'package:dio/dio.dart';
import 'package:path_provider/path_provider.dart';
import 'package:permission_handler/permission_handler.dart';
import 'package:image_gallery_saver/image_gallery_saver.dart';
import 'package:share_plus/share_plus.dart';
class PreviewController extends GetxController {
@ -17,7 +15,7 @@ class PreviewController extends GetxController {
bool storage = true;
bool videos = true;
bool photos = true;
bool visiable = true;
String currentImgUrl = '';
@override
void onInit() {
@ -26,6 +24,7 @@ class PreviewController extends GetxController {
initialPage.value = Get.arguments['initialPage']!;
currentPage.value = Get.arguments['initialPage']! + 1;
imgList.value = Get.arguments['imgList'];
currentImgUrl = imgList[initialPage.value];
}
}
@ -39,22 +38,6 @@ class PreviewController extends GetxController {
// final photosInfo = statuses[Permission.photos].toString();
}
// 图片保存
void onSaveImg() async {
var response = await Dio().get(imgList[initialPage.value],
options: Options(responseType: ResponseType.bytes));
final result = await ImageGallerySaver.saveImage(
Uint8List.fromList(response.data),
quality: 100,
name: "pic_vvex${DateTime.now().toString().split('-').join()}");
if (result != null) {
if (result['isSuccess']) {
// ignore: avoid_print
print('已保存到相册');
}
}
}
// 图片分享
void onShareImg() async {
requestPermission();
@ -62,9 +45,15 @@ class PreviewController extends GetxController {
options: Options(responseType: ResponseType.bytes));
final temp = await getTemporaryDirectory();
String imgName =
"pic_plpl${DateTime.now().toString().split('-').join()}.jpg";
"plpl_pic_${DateTime.now().toString().split('-').join()}.jpg";
var path = '${temp.path}/$imgName';
File(path).writeAsBytesSync(response.data);
Share.shareXFiles([XFile(path)], subject: imgList[initialPage.value]);
}
void onChange(int index) {
initialPage.value = index;
currentPage.value = index + 1;
currentImgUrl = imgList[index];
}
}