Skip to content
Snippets Groups Projects
activity.dart 1.33 KiB
Newer Older
import 'package:flutter/material.dart';
import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
import 'package:flutter_swipe/flutter_swipe.dart';

import 'package:scrobbles/common/config/activity_page.dart';
import 'package:scrobbles/common/config/screen.dart';
import 'package:scrobbles/common/cubit/nav/nav_cubit_pages.dart';
import 'package:scrobbles/common/ui/nav/bottom_nav_bar.dart';

class ScreenActivity extends StatelessWidget {
  const ScreenActivity({super.key});

  @override
  Widget build(BuildContext context) {
    return BlocBuilder<NavCubitPage, int>(
      builder: (BuildContext context, int pageIndex) {
        return Swiper(
          itemCount: Screen.items.length,
          itemBuilder: (BuildContext context, int pageIndex) {
            return ActivityPage.getWidget(pageIndex);
          },
          pagination: SwiperPagination(
            margin: const EdgeInsets.all(0),
            builder: SwiperCustomPagination(
              builder: (BuildContext context, SwiperPluginConfig config) {
                return BottomNavBar(swipeController: config.controller);
              },
            ),
          ),
          onIndexChanged: (newPageIndex) {
            BlocProvider.of<NavCubitPage>(context).updateIndex(newPageIndex);
          },
          outer: true,
          loop: false,
        );
      },
    );
  }
}