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

Second GET API Calling with Bloc simple Example in Flutter

Stack Container Scrollable Card widget UI with Custom Widget

Pagination with Bloc Pattern in Flutter