Flutter 我如何才能使一个持久的抽屉的路线在颤振?

Flutter 我如何才能使一个持久的抽屉的路线在颤振?,flutter,Flutter,现在我有一个抽屉的类,我所有的页面都使用它。当我推一条新路线时,抽屉会重置状态。我有什么办法可以解决这个问题吗?我正试图创建一个抽屉,根据路线更改选定项目的背景,但当我单击“自定义列表”平铺时,它只会高亮显示抽屉中的第一个项目,而不是所需的结果 在状态类的顶部: int-selectedIndex=0; 下面是一些代码: ListView.builder( 填充:EdgeInsets.zero, 收缩膜:对, itemCount:_.ms.length, //小学:对, itemBuilder

现在我有一个抽屉的类,我所有的页面都使用它。当我推一条新路线时,抽屉会重置状态。我有什么办法可以解决这个问题吗?我正试图创建一个抽屉,根据路线更改选定项目的背景,但当我单击“自定义列表”平铺时,它只会高亮显示抽屉中的第一个项目,而不是所需的结果

在状态类的顶部:

int-selectedIndex=0;
下面是一些代码:

ListView.builder(
填充:EdgeInsets.zero,
收缩膜:对,
itemCount:_.ms.length,
//小学:对,
itemBuilder:(上下文,索引){
PaurerItem currentItem=_PaurerItems[索引];
返回容器(
装饰:盒子装饰(
颜色:selectedIndex==索引?颜色。蓝色[100]:颜色。白色,
borderRadius:仅限borderRadius(
右上角:半径。圆形(50),
右下角:半径。圆形(50)),
孩子:ListTile(
标题:正文(
currentItem.title,
样式:TextStyle(
字体大小:15.0,
fontFamily:“Muli”,
字母间距:.3,
fontWeight:fontWeight.w600,
),
),
前导:图标(currentItem.Icon,颜色:Colors.black),
onTap:(){
设置状态(){
selectedIndex=索引;
});
Navigator.of(context.popandpushname(routes[index]);
},
),
);
},
)

当您推送一个新路由时,它会生成一个新的抽屉,而当前抽屉将被释放。因此,
setState
什么也不做

您应该尝试将
selectedIndex
声明为静态[或全局]变量,并将onTap更改为:

onTap:(){
selectedIndex=索引;
Navigator.of(context.popandpushname(routes[index]);
},

当您推送一个新路由时,它会生成一个新的抽屉,而当前抽屉将被释放。因此,
setState
什么也不做

您应该尝试将
selectedIndex
声明为静态[或全局]变量,并将onTap更改为:

onTap:(){
selectedIndex=索引;
Navigator.of(context.popandpushname(routes[index]);
},