From 4a53341ab2dea3a57720ae5ad55e01a32d528a88 Mon Sep 17 00:00:00 2001 From: Jonathan M Nguyen <31453488+jonathanMNg@users.noreply.github.com> Date: Mon, 24 Jun 2024 19:33:38 -1000 Subject: [PATCH 1/2] fixed issue where changing state of selectedColor of BottomBarItem doesn't get updated until reset app --- lib/src/anim_nav/animated_nav_tiles.dart | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/lib/src/anim_nav/animated_nav_tiles.dart b/lib/src/anim_nav/animated_nav_tiles.dart index a27366e..aef6207 100644 --- a/lib/src/anim_nav/animated_nav_tiles.dart +++ b/lib/src/anim_nav/animated_nav_tiles.dart @@ -117,16 +117,9 @@ class AnimatedNavigationTiles extends StatelessWidget { isLabelVisible: items.showBadge, backgroundColor: items.badgeColor, padding: items.badgePadding, - child: IconTheme( - data: IconThemeData( - color: itemColor, - size: iconSize, - // size: selected ? iconSize + 4 : iconSize, - ), - child: selected && items.selectedIcon != null - ? items.selectedIcon! - : items.icon!, - ), + child: selected && items.selectedIcon != null + ? items.selectedIcon! + : items.icon!, ), ), label, @@ -215,6 +208,7 @@ class AnimatedNavigationTiles extends StatelessWidget { padding: items.badgePadding, child: IconWidget( item: items, + color: items.selectedColor, selected: selected, iconSize: iconSize, barAnimation: barAnimation, @@ -360,11 +354,13 @@ class IconWidget extends StatefulWidget { required this.selected, required this.iconSize, required this.barAnimation, + required this.color }); final BottomBarItem item; final bool selected; final double iconSize; + final Color color; final BarAnimation barAnimation; @override @@ -380,7 +376,6 @@ class _IconWidgetState extends State @override void initState() { super.initState(); - _init(); } @@ -412,7 +407,7 @@ class _IconWidgetState extends State animationColor = ColorTween( begin: widget.item.backgroundColor ?? widget.item.unSelectedColor, - end: widget.item.selectedColor, + end: widget.color, ).animate(animation) ..addListener(() { setState(() {}); @@ -442,7 +437,7 @@ class _IconWidgetState extends State (widget.selected ? widget.barAnimation == BarAnimation.transform3D ? widget.item.selectedColor - : animationColor.value + : widget.color : widget.item.unSelectedColor), size: widget.selected ? widget.iconSize + 4 : widget.iconSize, ), From d74c76063e92d147d6cbada6dd99a03b51ea1c51 Mon Sep 17 00:00:00 2001 From: Jonathan M Nguyen <31453488+jonathanMNg@users.noreply.github.com> Date: Mon, 24 Jun 2024 19:37:22 -1000 Subject: [PATCH 2/2] revert unnecessary changes --- lib/src/anim_nav/animated_nav_tiles.dart | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/lib/src/anim_nav/animated_nav_tiles.dart b/lib/src/anim_nav/animated_nav_tiles.dart index aef6207..a8d48ef 100644 --- a/lib/src/anim_nav/animated_nav_tiles.dart +++ b/lib/src/anim_nav/animated_nav_tiles.dart @@ -117,9 +117,16 @@ class AnimatedNavigationTiles extends StatelessWidget { isLabelVisible: items.showBadge, backgroundColor: items.badgeColor, padding: items.badgePadding, - child: selected && items.selectedIcon != null - ? items.selectedIcon! - : items.icon!, + child: IconTheme( + data: IconThemeData( + color: itemColor, + size: iconSize, + // size: selected ? iconSize + 4 : iconSize, + ), + child: selected && items.selectedIcon != null + ? items.selectedIcon! + : items.icon!, + ), ), ), label, @@ -376,6 +383,7 @@ class _IconWidgetState extends State @override void initState() { super.initState(); + _init(); }