This commit is contained in:
bluesea 2024-05-14 16:05:58 +08:00
parent d49d39165f
commit e59ddfbc30
6 changed files with 37 additions and 10 deletions

View File

@ -1,7 +1,8 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:wallpaper/pages/downloadpage/downloadpage_controller.dart';
class DownloadPageView extends GetView { class DownloadPageView extends GetView<DownloadPageController> {
const DownloadPageView({super.key}); const DownloadPageView({super.key});
@override @override

View File

@ -1,5 +1,6 @@
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:wallpaper/models/imgnetodel.dart'; import 'package:wallpaper/models/imgnetodel.dart';
import 'package:wallpaper/routes/app_routes.dart';
import 'package:wallpaper/utils/downloadmanager.dart'; import 'package:wallpaper/utils/downloadmanager.dart';
class ImgCategoryPageController extends GetxController { class ImgCategoryPageController extends GetxController {
@ -19,4 +20,8 @@ class ImgCategoryPageController extends GetxController {
// //
//.... //....
} }
void goScanView(var index,var dataModel){
Get.toNamed(AppRoutes.imgscanpage, arguments: {"index":index,"dataModel":dataModel});
}
} }

View File

@ -68,7 +68,8 @@ class ImgCategoryPageView extends GetView<ImgCategoryPageController> {
color: Colors.transparent, color: Colors.transparent,
child: InkWell( child: InkWell(
onTap: () { onTap: () {
Get.to(ImgScanPageView(dataModel: controller.dataModel,currentIndex: index,)); // Get.to(ImgScanPageView(dataModel: controller.dataModel,currentIndex: index,));
controller.goScanView(index, controller.dataModel);
}, },
child: Align( child: Align(
alignment: Alignment.bottomCenter, alignment: Alignment.bottomCenter,

View File

@ -1,5 +1,15 @@
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:get/get_rx/get_rx.dart';
import 'package:wallpaper/models/imgnetodel.dart';
class ImgScanPageController extends GetxController { class ImgScanPageController extends GetxController {
late NetImgCategory dataModel;
RxInt currentIndex = RxInt(0);
@override
void onInit(){
super.onInit();
currentIndex.value = Get.arguments["index"];
dataModel = Get.arguments["dataModel"];
}
} }

View File

@ -4,13 +4,14 @@ import 'package:wallpaper/models/imgnetodel.dart';
import 'package:photo_view/photo_view.dart'; import 'package:photo_view/photo_view.dart';
import 'package:photo_view/photo_view_gallery.dart'; import 'package:photo_view/photo_view_gallery.dart';
import 'package:wallpaper/pages/imgscanpage/imgscanpage_controller.dart';
class ImgScanPageView extends GetView { class ImgScanPageView extends GetView<ImgScanPageController> {
final NetImgCategory dataModel; // final NetImgCategory dataModel;
final int currentIndex; // final int currentIndex;
const ImgScanPageView({super.key,required this.dataModel,required this.currentIndex}); // const ImgScanPageView({super.key,required this.dataModel,required this.currentIndex});
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
@ -27,7 +28,7 @@ class ImgScanPageView extends GetView {
scrollPhysics: const BouncingScrollPhysics(), scrollPhysics: const BouncingScrollPhysics(),
builder: (BuildContext context, int index) { builder: (BuildContext context, int index) {
return PhotoViewGalleryPageOptions( return PhotoViewGalleryPageOptions(
imageProvider: NetworkImage(dataModel.data![index].original!), imageProvider: NetworkImage(controller.dataModel.data![index].original!),
initialScale: PhotoViewComputedScale.contained * 0.8, initialScale: PhotoViewComputedScale.contained * 0.8,
minScale: PhotoViewComputedScale.contained*0.4, minScale: PhotoViewComputedScale.contained*0.4,
maxScale: PhotoViewComputedScale.contained * 4, maxScale: PhotoViewComputedScale.contained * 4,
@ -37,7 +38,7 @@ class ImgScanPageView extends GetView {
// heroAttributes: PhotoViewHeroAttributes(tag: galleryItems[index].id), // heroAttributes: PhotoViewHeroAttributes(tag: galleryItems[index].id),
); );
}, },
itemCount: dataModel.data!.length, itemCount: controller.dataModel.data!.length,
loadingBuilder: (context, event) => Center( loadingBuilder: (context, event) => Center(
child: SizedBox( child: SizedBox(
width: 20.0, width: 20.0,

View File

@ -2,6 +2,7 @@ import 'package:wallpaper/pages/homepage/homepage_binding.dart';
import 'package:wallpaper/pages/imgcategorypage/imgcategorypage_binding.dart'; import 'package:wallpaper/pages/imgcategorypage/imgcategorypage_binding.dart';
import 'package:wallpaper/pages/imgcategorypage/imgcategorypage_view.dart'; import 'package:wallpaper/pages/imgcategorypage/imgcategorypage_view.dart';
import 'package:wallpaper/pages/imgscanpage/imgscanpage_binding.dart'; import 'package:wallpaper/pages/imgscanpage/imgscanpage_binding.dart';
import 'package:wallpaper/pages/imgscanpage/imgscanpage_view.dart';
import 'package:wallpaper/pages/tabarpage/tabarpage_binding.dart'; import 'package:wallpaper/pages/tabarpage/tabarpage_binding.dart';
import 'package:wallpaper/pages/tabarpage/tabarpage_view.dart'; import 'package:wallpaper/pages/tabarpage/tabarpage_view.dart';
@ -19,17 +20,25 @@ class AppRoutes {
AppRoutes._(); AppRoutes._();
static const initialPage = '/tabvc'; static const initialPage = '/tabvc';
static const imgcategorypage = "/ImgCategoryPage"; static const imgcategorypage = "/ImgCategoryPage";
static const imgscanpage = "/imgscanpage";
static final routes= [ static final routes= [
GetPage( GetPage(
name: initialPage, name: initialPage,
page: ()=> const TabbarPageView(), page: ()=> const TabbarPageView(),
bindings: [TabbarPageBinding(), HomePageBinding(),DownloadPageBinding(),MyPageBinding(),ImgScanPageBinding()], bindings: [TabbarPageBinding(), HomePageBinding(),DownloadPageBinding(),MyPageBinding()],
), ),
GetPage( GetPage(
name: imgcategorypage, name: imgcategorypage,
page: ()=> const ImgCategoryPageView(), page: ()=> const ImgCategoryPageView(),
bindings: [ImgCategoryPageBinding()], bindings: [ImgCategoryPageBinding()],
), ),
GetPage(
name: imgscanpage,
page: ()=> ImgScanPageView(),
bindings: [ImgScanPageBinding()],
),
]; ];
} }