image_slide.dart 3.52 KB
Newer Older
1 2 3 4
import 'package:flutter/material.dart';
import 'package:carousel_slider/carousel_slider.dart';

final List<String> imgList = [
Budi Prasetyo's avatar
Budi Prasetyo committed
5 6 7 8 9
  'images/homepage.png',
  'images/solution.jpg',
  'images/contactus1.jpg',
  'images/solution1.jpg',
  'images/solution2.jpg',
10 11 12 13 14 15 16 17 18 19 20 21 22 23

];

final List<Widget> imageSliders = imgList
    .map((item) => Container(
          child: Container(
            margin: const EdgeInsets.all(5.0),
            child: ClipRRect(
                borderRadius: const BorderRadius.all(Radius.circular(5.0)),
                child: Stack(
                  children: <Widget>[
                    Image.asset(
                      item,
                      fit: BoxFit.cover,
Budi Prasetyo's avatar
Budi Prasetyo committed
24
                      width: 840,
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
                    ),
                    Positioned(
                      bottom: 0.0,
                      left: 0.0,
                      right: 0.0,
                      child: Container(
                        decoration: const BoxDecoration(
                          gradient: LinearGradient(
                            colors: [
                              Color.fromARGB(200, 0, 0, 0),
                              Color.fromARGB(0, 0, 0, 0)
                            ],
                            begin: Alignment.bottomCenter,
                            end: Alignment.topCenter,
                          ),
                        ),
Budi Prasetyo's avatar
Budi Prasetyo committed
41 42 43 44 45 46 47 48 49 50 51
                        // padding: const EdgeInsets.symmetric(
                        //     vertical: 10.0, horizontal: 20.0),
                        // child: const Text(
                        //   'Bootcamp',
                        //   //'No. ${imgList.indexOf(item)} image',
                        //   style: TextStyle(
                        //     color: Colors.white,
                        //     fontSize: 20.0,
                        //     fontWeight: FontWeight.bold,
                        //   ),
                        // ),
52 53 54 55 56 57 58
                      ),
                    ),
                  ],
                )),
          ),
        ))
    .toList();
Budi Prasetyo's avatar
Budi Prasetyo committed
59 60 61 62 63
final CarouselController _controller = CarouselController();
@override
void initState() {
  initState();
}
64 65 66 67 68

class VerticalSlider extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    var screenSize = MediaQuery.of(context).size;
Budi Prasetyo's avatar
Budi Prasetyo committed
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
    return Stack(
      children: [
        Container(
          width: screenSize.width*0.8,
            child: CarouselSlider(
              carouselController: _controller,
              options: CarouselOptions(
                aspectRatio: 2.0,
                enlargeCenterPage: true,
                scrollDirection: Axis.horizontal,
                autoPlay: true,
              ),
              items: imageSliders,
            ),
        ),
        Center(
          child: Row(
            crossAxisAlignment: CrossAxisAlignment.center,
            mainAxisAlignment: MainAxisAlignment.spaceBetween,
            children: [
              Flexible(
                child: ElevatedButton(
                  onPressed: () => _controller.previousPage(),
r.manan@eksad.com's avatar
r.manan@eksad.com committed
92
                  child: Icon(Icons.arrow_back_ios_new_outlined),
Budi Prasetyo's avatar
Budi Prasetyo committed
93 94 95 96 97 98
                style: ElevatedButton.styleFrom(primary: Colors.grey),
              ),
              ),
              Flexible(
                child: ElevatedButton(
                  onPressed: () => _controller.nextPage(),
r.manan@eksad.com's avatar
r.manan@eksad.com committed
99
                  child: Icon(Icons.arrow_forward_ios_outlined),
Budi Prasetyo's avatar
Budi Prasetyo committed
100 101 102 103
                style: ElevatedButton.styleFrom(primary: Colors.grey),
              ),
              ),
            ],
104
          ),
Budi Prasetyo's avatar
Budi Prasetyo committed
105 106 107
        )
      ],
    );
108 109
  }
}