page_controller_listenable 0.0.3
page_controller_listenable: ^0.0.3 copied to clipboard
A listenable that wraps around the PageController.
Page Controller Listenable #
A listenable that wraps around the PageController
.
This listenable extends ValueListenable<double>
and can be quickly passed into animations, where the type check would fail against the PageController
.
Example #
class ExampleWidgetState extends State<ExampleWidget> {
late PageController _pageController;
late PageControllerListenable _pageControllerListenable;
@override
void initState() {
_pageController = PageController();
_pageControllerListenable = PageControllerListenable(_pageController);
super.initState();
}
@override
void dispose() {
_pageControllerListenable.dispose();
_pageController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return WidgetWithSomeAnimation(
animation: _pageControllerListenable,
child: ...
);
}
}
There's a hook included too.
Hook example #
class ExampleWidget extends HookWidget {
@override
Widget build(BuildContext context) {
final pageController = usePageController();
final pageControllerListenable = usePageControllerListenable(pageController);
return WidgetWithSomeAnimation(
animation: pageControllerListenable,
child: ...
);
}
}