GridView with CarouselOptions

 import "package:carousel_slider/carousel_slider.dart";

import "package:cpps_application/cpps_project_controller.dart";
import "package:flutter/material.dart";
import "package:get/get.dart";
import "package:widget_zoom/widget_zoom.dart";
import 'GridView_Pages/News/News.dart';

class GridViewCpps extends StatelessWidget {
GridViewCpps({super.key});

final ProjectController GridController = Get.put(ProjectController(),);

@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.grey.shade100,
body: Center(
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Column(
children: [
CarouselSlider(
items: [
InkWell(
child: Container(
child: WidgetZoom(
heroAnimationTag: "photo1",
zoomWidget: Image.asset("assets/images/meeting.jpeg",
fit: BoxFit.cover,
),
),
margin: const EdgeInsets.all(6.0,),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(10.0,),
image: DecorationImage(
image: AssetImage("assets/images/meeting.jpeg",),
fit: BoxFit.cover,
),
),
),
),
InkWell(
child: Container(
child: WidgetZoom(
heroAnimationTag: "photo2",
zoomWidget: Image.asset("assets/images/hanuman.jpg",
fit: BoxFit.cover,
),
),
margin: const EdgeInsets.all(6.0,),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(10.0,),
image: DecorationImage(
image: AssetImage("assets/images/hanuman.jpg"),
fit: BoxFit.cover,
),
),
),
),
// Image.asset("assets/images/hanuman.jpg"),
],
options: CarouselOptions(
autoPlayAnimationDuration: const Duration(seconds: 1,),
autoPlayInterval: const Duration(seconds: 2,),
autoPlay: true,
autoPlayCurve: Curves.fastOutSlowIn,
enlargeCenterPage: true,
enableInfiniteScroll: true,
enlargeStrategy: CenterPageEnlargeStrategy.height,
aspectRatio: 16/10,
///If you pass the height parameter, the aspectRatio parameter will be ignored
// height: 300.0,
viewportFraction: 0.9,
),
),
const SizedBox(height: 12.0,),
Expanded(
child: GridView.builder(
itemCount: GridController.imageList.length,
itemBuilder: (context, index) {
return Card(
child: InkWell(
onTap: () {
Get.to(() {
return GridController.GridPagesList[index];
},);
},
child: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Image.asset("${GridController.imageList[index]}", height: 50.0,),
const SizedBox(height: 10.0,),
Text("${GridController.titleGuj[index]}", style: const TextStyle(color: Colors.red,),),
],
),
),
),
);
},
gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 3,
mainAxisSpacing: 5.0,
crossAxisSpacing: 5.0,
),
),
),
],
),
),
),
);
}
}

Comments

Popular posts from this blog

Pagination with Bloc Pattern in Flutter

Pagination First Practical in Flutter

ExpansionPanel with ExpansionPanelList with Complete Collapse Operation in Flutter