diff --git a/wallpaper/lib/pages/downloadpage/downloadpage_controller.dart b/wallpaper/lib/pages/downloadpage/downloadpage_controller.dart index b17c36e..03cb5be 100644 --- a/wallpaper/lib/pages/downloadpage/downloadpage_controller.dart +++ b/wallpaper/lib/pages/downloadpage/downloadpage_controller.dart @@ -7,6 +7,7 @@ import 'package:wallpaper/utils/downloadmanager.dart'; import 'package:wallpaper/utils/local_img_manager.dart'; class DownloadPageController extends GetxController { + static DownloadPageController get to => Get.find(); var dataItems = [].obs; // ignore: prefer_typing_uninitialized_variables var localDir = RxString(""); @@ -15,10 +16,13 @@ class DownloadPageController extends GetxController { Future onInit() async{ super.onInit(); localDir.value = await LocalImgManager.getImgLocalDir(); - dataItems.value = DBManager.allImgs(); + reloadList(); } + void reloadList() { + dataItems.value = DBManager.allImgs(); + } Future < void> saveImgToAlbum(String imgUrl) async { @@ -45,8 +49,7 @@ class DownloadPageController extends GetxController { await DownloadManager.deleteWallpaperFile(imgUrl); DBManager.deleteImg(dataItems[index]); // ignore: invalid_use_of_protected_member - dataItems.value.removeAt(index); - + dataItems.removeAt(index); // dataItems.value = DBManager.allImgs(); } diff --git a/wallpaper/lib/pages/imgscanpage/imgscanpage_controller.dart b/wallpaper/lib/pages/imgscanpage/imgscanpage_controller.dart index c9abdd7..c598a70 100644 --- a/wallpaper/lib/pages/imgscanpage/imgscanpage_controller.dart +++ b/wallpaper/lib/pages/imgscanpage/imgscanpage_controller.dart @@ -1,5 +1,5 @@ +import 'package:flutter/material.dart'; import 'package:get/get.dart'; -import 'package:get/get_rx/get_rx.dart'; import 'package:wallpaper/models/imgnetodel.dart'; import 'package:wallpaper/utils/downloadmanager.dart'; import 'dart:async'; @@ -8,6 +8,7 @@ class ImgScanPageController extends GetxController { late NetImgCategory dataModel; RxInt currentIndex = RxInt(0); RxInt showAppbar = RxInt(0);//控制appbar显示.... + late final PageController pcontroller; Timer? _timer; var isAndroid = Platform.isAndroid; var albumPermisonisDenied = false.obs; @@ -16,6 +17,7 @@ class ImgScanPageController extends GetxController { super.onInit(); currentIndex.value = Get.arguments["index"]; dataModel = Get.arguments["dataModel"]; + pcontroller = PageController(initialPage: currentIndex.value); } @override diff --git a/wallpaper/lib/pages/imgscanpage/imgscanpage_view.dart b/wallpaper/lib/pages/imgscanpage/imgscanpage_view.dart index 197004e..aa3795c 100644 --- a/wallpaper/lib/pages/imgscanpage/imgscanpage_view.dart +++ b/wallpaper/lib/pages/imgscanpage/imgscanpage_view.dart @@ -44,6 +44,7 @@ class ImgScanPageView extends GetView { // heroAttributes: PhotoViewHeroAttributes(tag: galleryItems[index].id), ); }, + pageController: controller.pcontroller, itemCount: controller.dataModel.data!.length, loadingBuilder: (context, event) => Center( child: SizedBox( diff --git a/wallpaper/lib/pages/tabarpage/tabarpage_controller.dart b/wallpaper/lib/pages/tabarpage/tabarpage_controller.dart index ef05409..500330c 100644 --- a/wallpaper/lib/pages/tabarpage/tabarpage_controller.dart +++ b/wallpaper/lib/pages/tabarpage/tabarpage_controller.dart @@ -1,4 +1,5 @@ import 'package:get/get.dart'; +import 'package:wallpaper/pages/downloadpage/downloadpage_controller.dart'; class TabbarPageController extends GetxController { var currentIdenx = 0.obs; @@ -6,6 +7,7 @@ class TabbarPageController extends GetxController { void onItemTapped(int index) { currentIdenx.value = index; + DownloadPageController.to.reloadList(); } } \ No newline at end of file diff --git a/wallpaper/lib/utils/dbmanager.dart b/wallpaper/lib/utils/dbmanager.dart index 31aee4f..426866f 100644 --- a/wallpaper/lib/utils/dbmanager.dart +++ b/wallpaper/lib/utils/dbmanager.dart @@ -41,6 +41,7 @@ class DBManager { static void deleteImg(LocalImageInfo item ) { DBManager.box.delete(item.key); + DBManager.box.flush(); }