opinionated_pagination 1.0.0 copy "opinionated_pagination: ^1.0.0" to clipboard
opinionated_pagination: ^1.0.0 copied to clipboard

outdated

A very opinionated ellipsis pagination solution for Flutter. It provides a row of widgets with 7 buttons to control pagination. Designed with Riverpod in mind, but should work with your state manageme [...]

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:opinionated_pagination/opinionated_pagination.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      title: 'Opinionated Pagination Demo',
      home: Home(),
    );
  }
}

class Home extends StatefulWidget {
  const Home({Key? key}) : super(key: key);

  @override
  _HomeState createState() => _HomeState();
}

class _HomeState extends State<Home> {
  int paginationPage = 0;
  final int limit = 5;
  final int itemCount = 120;

  @override
  Widget build(BuildContext context) {
    final _pageGroupEnd = (paginationPage + 1) * limit;
    final _pageGroupStart = _pageGroupEnd - (limit - 1);
    return Scaffold(appBar: AppBar(title: Text('Opinionated Pagination Example'),),
      body: Container(
        padding: const EdgeInsets.only(top: 10.0),
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.stretch,
          children: [
            Row(
              mainAxisAlignment: MainAxisAlignment.center,
              children: [
                Text('Showing $_pageGroupStart to ${_pageGroupEnd > itemCount ? itemCount : _pageGroupEnd} of $itemCount'),
              ],
            ),
            Divider(height: 22.0, thickness: 1.0, color: Colors.grey.shade300),
            OpinionatedPagination(
              pageNumber: paginationPage,
              totalItems: itemCount,
              skip: paginationPage,
              limit: limit,
              onPageChanged: (int? i) {
                if (i != null) {
                  setState(() {
                    paginationPage = i;
                  });
                }
              },
            ),
          ],
        ),
      ),
    );
  }
}
7
likes
0
pub points
8%
popularity

Publisher

verified publisherbroadwood.dev

A very opinionated ellipsis pagination solution for Flutter. It provides a row of widgets with 7 buttons to control pagination. Designed with Riverpod in mind, but should work with your state management solution of choice.

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

flutter

More

Packages that depend on opinionated_pagination