【发布时间】:2020-11-23 05:07:42
【问题描述】:
目前,我在flutter https://pub.dev/packages/curved_navigation_bar 中有一个库,并且已经在我的项目中实现了它,但问题是当您在项目上导航时,所选项目的图标颜色不会改变。是否可以动态更改所选项目的图标颜色?
这是默认的:
这就是我需要的:
谢谢!
【问题讨论】:
目前,我在flutter https://pub.dev/packages/curved_navigation_bar 中有一个库,并且已经在我的项目中实现了它,但问题是当您在项目上导航时,所选项目的图标颜色不会改变。是否可以动态更改所选项目的图标颜色?
这是默认的:
这就是我需要的:
谢谢!
【问题讨论】:
我认为这应该可行。
class HomeBottomNavigationBar extends StatefulWidget {
@override
_HomeBottomNavigationBarState createState() =>_HomeBottomNavigationBarState();
}
class _HomeBottomNavigationBarState extends State<HomeBottomNavigationBar>
{
int pressedButtonNo = 0;
@override
Widget build(BuildContext context) {
return CurvedNavigationBar(
items: <Widget>[
Icon(Icons.add, size: 30, color: (pressedButtonNo = 0)? Colors.Green : Colors.Black,),
Icon(Icons.list, size: 30, color: (pressedButtonNo = 1)? Colors.Green : Colors.Black,),
Icon(Icons.compare_arrows, size: 30, color: (pressedButtonNo = 2)? Colors.Green : Colors.Black,),
],
onTap: (index) {
setState () {
pressedButtonNo = index;
}
},
);
}}
我没有测试过。希望它有效! 快乐编码:)
【讨论】:
即使迟到了,我也找到了办法:
return Scaffold(
body: Stack(
children: [
_tabItems[_activePage],
Align(
alignment: Alignment.bottomCenter,
child: CurvedNavigationBar(//your stuff),
)
],
),
);
【讨论】: