indexed_scroll_controller 0.3.2 copy "indexed_scroll_controller: ^0.3.2" to clipboard
indexed_scroll_controller: ^0.3.2 copied to clipboard

Scroll a Flutter ListView.builder to any item by index, including items not yet built or measured. Vertical and horizontal.

example/lib/main.dart

import 'package:example/fingerprint_screen.dart';
import 'package:example/horizontal_screen.dart';
import 'package:example/separators_screen.dart';
import 'package:example/vertical_screen.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(const ExampleApp());
}

class ExampleApp extends StatefulWidget {
  const ExampleApp({super.key});

  @override
  State<ExampleApp> createState() => _ExampleAppState();
}

class _ExampleAppState extends State<ExampleApp> {
  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      title: 'Indexed Scroll Example',
      home: HomeScreen(),
    );
  }
}

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

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('Indexed Scroll Controller Examples')),
      body: ListView(
        children: [
          ListTile(
            title: const Text('Fingerprint Invalidation'),
            subtitle: const Text('Automatic invalidation on data change'),
            onTap: () {
              Navigator.of(context).push(
                MaterialPageRoute<void>(
                  builder: (context) => const FingerprintScreen(),
                ),
              );
            },
          ),
          ListTile(
            title: const Text('Vertical'),
            subtitle: const Text('Vertical scrolling with alignment control'),
            onTap: () {
              Navigator.of(context).push(
                MaterialPageRoute<void>(
                  builder: (context) => const VerticalScreen(),
                ),
              );
            },
          ),
          ListTile(
            title: const Text('Horizontal'),
            subtitle:
                const Text('Horizontal scrolling with variable card widths'),
            onTap: () {
              Navigator.of(context).push(
                MaterialPageRoute<void>(
                  builder: (context) => const HorizontalScreen(),
                ),
              );
            },
          ),
          ListTile(
            title: const Text('ListView.separated'),
            subtitle: const Text('separator() and ScrollAlignmentTarget'),
            onTap: () {
              Navigator.of(context).push(
                MaterialPageRoute<void>(
                  builder: (context) => const SeparatorsScreen(),
                ),
              );
            },
          ),
        ],
      ),
    );
  }
}
0
likes
160
points
323
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Scroll a Flutter ListView.builder to any item by index, including items not yet built or measured. Vertical and horizontal.

Repository (GitHub)
View/report issues

Topics

#scrolling #listview #scroll-controller #ui

License

MIT (license)

Dependencies

flutter

More

Packages that depend on indexed_scroll_controller