Flutter 颤振中的曲线导航杆

Flutter 颤振中的曲线导航杆,flutter,dart,Flutter,Dart,目前,我在flatter中有一个库,并且已经在我的项目中实现了它,但问题是当您在项目上导航时,所选项目的图标颜色并没有改变。是否可以动态更改所选项目的图标颜色 这是默认设置: 这就是我需要的: 谢谢 我认为这应该行得通 class HomeBottomNavigationBar extends StatefulWidget { @override _HomeBottomNavigationBarState createState() =>_HomeBottomNavigationBa

目前,我在flatter中有一个库,并且已经在我的项目中实现了它,但问题是当您在项目上导航时,所选项目的图标颜色并没有改变。是否可以动态更改所选项目的图标颜色

这是默认设置:

这就是我需要的:


谢谢

我认为这应该行得通

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;
    }
  },
);
}}
类HomeBottomNavigationBar扩展StatefulWidget{
@凌驾
_HomeBottomNavigationBarState createState()=>\u HomeBottomNavigationBarState();
}
类_HomeBottomNavigationBarState扩展状态
{
int pressed按钮否=0;
@凌驾
小部件构建(构建上下文){
返回曲线导航栏(
项目:[
图标(Icons.add,大小:30,颜色:(按按钮否=0)?颜色。绿色:颜色。黑色,),
图标(Icons.list,大小:30,颜色:(按按钮否=1)?颜色。绿色:颜色。黑色,),
图标(Icons.compare_箭头,大小:30,颜色:(按按钮否=2)?颜色。绿色:颜色。黑色,),
],
onTap:(索引){
设置状态(){
按下按钮否=索引;
}
},
);
}}
我还没有测试过。希望它能起作用!
愉快的编码:)

Hah,这么简单的解决方案)非常感谢,但是高程呢?)我认为它没有高程属性,但总是有办法做一些事情的。我认为您可以通过在正文末尾添加一个容器(就在弯曲的导航栏下方)并向其添加BoxShadow属性来间接实现它。您使用可更改图标颜色的答案是正确的,但您需要使用statefull小部件,而不是使用无状态小部件!)使用boxShadow的解决方案无法正常工作。。似乎需要创建自定义阴影路径,因此该库变得无用。我将尝试创建一个自定义库(很遗憾,我还不能结束这个问题((