hz_loading_button
A simple, customizable loading button widget for Flutter.
It wraps an ElevatedButton and automatically shows a CircularProgressIndicator when performing async tasks.
The button width remains stable while loading, avoiding layout shifts.
✨ Features
- Async-safe: disables itself while running
onPressed. - Smooth loading indicator swap with
AnimatedSwitcher. - Preserves button width during loading.
- Fully customizable colors, padding, border radius, and elevation.
- Optionally expand to full width.
- Supports minimum width to prevent shrinking on load.
🚀 Getting started
Add this to your app’s pubspec.yaml:
dependencies:
hz_loading_button: ^0.0.1