在这种情况下,我想通过在 flutter 编程语言中单击 Inkwel 1x 将布尔值 false 更改为 true。我将更改的键位于菜单的数组列表中。所以当菜单被点击时,键以false开头,然后它会变成true。按照我的代码。我要更改的是收藏键
这个数组数据:
List<menuData> _menuServiceList = [];
@override
void initState() {
_menuServiceList.add(new menuData(
id: 1, name: 'menu 1', image: 'assets/icon/balancesheet.png', favorit: false
));
_menuServiceList.add(new menuData(
id: 2, name: 'menu 2', image: 'assets/icon/card.png', favorit: false
));
_menuServiceList.add(new menuData(
id: 3, name: 'menu 3', image: 'assets/icon/decrease.png', favorit: false
));
_menuServiceList.add(new menuData(
id: 5, name: 'menu 4', image: 'assets/icon/growth.png', favorit: false
));
_menuServiceList.add(new menuData(
id: 5, name: 'menu 5', image: 'assets/icon/growth.png', favorit: false
));
_menuServiceList.add(new menuData(
id: 6, name: 'menu 6', image: 'assets/icon/officesupplies.png', favorit: false
));
_menuServiceList.add(new menuData(
id: 7, name: 'menu 7', image: 'assets/icon/piechart.png', favorit: false
));
_menuServiceList.add(new menuData(
id: 8, name: 'menu 8', image: 'assets/icon/sharemoney.png', favorit: false
));
_menuServiceList.add(new menuData(
id: 9, name: 'menu 9', image: 'assets/icon/speechbubble.png', favorit: false
));
_menuServiceList.add(new menuData(
id: 10, name: 'menu 10', image: 'assets/icon/grid.png', favorit: true
));
super.initState();
}
此代码单击按钮:
child: InkWell(
onTap: (){
setState(() {
if (menuData.favorit == false){
print("klik false");
}else{
print("klik true");
}
});
},
child: HeaderItem(
images: menuData.image,
title: menuData.name,
textcolor: Colors.grey[600],
) ,
)
答案 0 :(得分:1)
首先,请确保 menuData.favorit
是可变的。然后相应地更新标志
child: InkWell(
onTap: (){
setState(() {
menuData.favorit = !menuData.favorit;
});
},
child: HeaderItem(
images: menuData.image,
title: menuData.name,
textcolor: Colors.grey[600],
),
)