如何让我的 Inkwell 悬停在我的菜单项上工作?
How do i make my Inkwell onhover work on my menu items?
我正在尝试在我的导航菜单上创建一个 onHover 效果,我的方法是创建布尔列表,只要我的导航菜单项和初始值为假值,然后当菜单项悬停时改变颜色,我的问题是 inkwell onhover 函数的值参数正在打印出正确的值到控制台,但它不影响我的菜单项颜色,有什么建议吗?当我运行它时,它仍然是红色,悬停没有效果
final List hover = [false, false, false, false, false];
InkWell(
onHover: (value) {
setState(() {
value ? hover[1] = true : hover[1] = false;
});
},
onTap: () {},
child: Text('Org Chart',
style: TextStyle(
color: hover[1] ? Colors.black : Colors.red))),
您确定构建方法中没有 hover
变量吗?确保它是 StatefulWidget 的正确状态变量。我还建议删除 final
注释,因为您想在悬停时更改它。
您也可以像这样简化代码:
setState(() {
hover[1] = value;
});
我正在尝试在我的导航菜单上创建一个 onHover 效果,我的方法是创建布尔列表,只要我的导航菜单项和初始值为假值,然后当菜单项悬停时改变颜色,我的问题是 inkwell onhover 函数的值参数正在打印出正确的值到控制台,但它不影响我的菜单项颜色,有什么建议吗?当我运行它时,它仍然是红色,悬停没有效果
final List hover = [false, false, false, false, false];
InkWell(
onHover: (value) {
setState(() {
value ? hover[1] = true : hover[1] = false;
});
},
onTap: () {},
child: Text('Org Chart',
style: TextStyle(
color: hover[1] ? Colors.black : Colors.red))),
您确定构建方法中没有 hover
变量吗?确保它是 StatefulWidget 的正确状态变量。我还建议删除 final
注释,因为您想在悬停时更改它。
您也可以像这样简化代码:
setState(() {
hover[1] = value;
});