Search packages, repositories and app categories

Package detailsv1.1.1

sticky_footer_scrollview

A Flutter Widget that is scrollable with a sticky footer either stick to the bottom of screen of the end of the scroll body.

AndroidiOSWebmacOSWindowsLinux
30-day downloads
1.2K
Likes
24
Pub points
160

Install package

flutter pub add sticky_footer_scrollview

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

A Flutter widget that enables scrolling content with a footer that remains fixed at the bottom of the screen or at the end of the scrollable content. Ideal for forms, chat interfaces, or any layout requiring a persistent action bar. The footer sticks dynamically based on scroll position, ensuring usability across all platforms including mobile, web, and desktop. It integrates seamlessly into existing scrollable structures without complex configuration.

Use cases

  • Chat interfaces
  • Form inputs with persistent actions
  • Bottom navigation in scrollable lists
  • Dynamic content with fixed controls
  • Mobile and web app footers

Key features

  • Sticky footer at screen bottom
  • Footer sticks to content end
  • Cross-platform support
  • Easy integration with ScrollView
  • Customizable sticky behavior
  • Works on Android, iOS, Web, macOS, Windows, Linux

Suitable for

  • Developers building scrollable UIs with persistent footers
  • Apps needing responsive bottom bars
  • Designers implementing sticky elements
  • Multi-platform Flutter projects
  • UI components requiring dynamic positioning

Considerations

  • May require careful padding management
  • Behavior depends on scroll extent
  • Not ideal for nested scroll scenarios
  • Performance impact with large datasets
  • Limited customization beyond basic stickiness

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

sticky_footer_scrollview

pub package

A Flutter Widget that is scrollable with a sticky footer either stick to the bottom of screen of the end of the scroll body.

Background

This package using SingleScrollView and CustomMultiChildLayout to acheive a scrollable widget with a sticky footer. This allow a dynamic height of child widgets in scroll body.

At the same time, because of the SingleScrollView with Column approach, this is not recommended to use with lots of child widgets for performance reason. You may simiply test with the example to see whether it is fit for your case.

Usage

This shows Widget's full customizations:

StickyFooterScrollView({    
    this.footer,
    @required this.itemBuilder,
    @required this.itemCount,
    this.scrollController,
})
  1. footer is the footer widget that is placed either at the bottom of screen or the end of the scroll body.
  2. itemBuilder to build child widgets of scroll body
  3. itemCount is the nunber of child widgets in scroll body. Only allows >= 0.
  4. scrollController allows maunally jump to certain offset position.

Example

when scrollbody is shorter than the avialble widget height

when scrollbody is longer than the avialble widget height

@override
  Widget build(BuildContext context) {
    return SafeArea(
      child: Scaffold(
        body: StickyFooterScrollView(
          itemCount: 50,
          itemBuilder: (context, index) {
            return Card(
              child: ListTile(
                title: Text('content $index'),
              ),
              color: Colors.pinkAccent,
            );
          },
          footer: AppBar(
            title: Text('i stick at bottom'),
          ),
        ),
      ),
    );
  }

Lisence

MIT

Categories

Source repository

Projects using this package

No data available yet.