无法删除芯片。
这是芯片详细信息中的芯片数据列表。
List<Map> chipDetails= new List<Map>();
下面是创建筹码的函数及其onDeleted函数。 数据正在从芯片详细信息列表中删除,但它位于 UI 上反射。
//For creating the input chip
Widget selectPlayerAsChip(String playerId,String playerName, String playerImage){
Map data = {"id":playerId,"name":playerName,"profile_pic":playerImage};
chipDetails.add(data);
return Chip(
avatar: profileIconSelector(playerImage,playerName,10.0),
label: Text('$playerName'),
onDeleted: (){
setState(() {
chipDetails.removeWhere((Map info) {
return playerName == info["name"];
});
});
},
);
}
我最终使用包装在有状态对话框中列出芯片。 这些YouTube视频有所帮助:https://youtu.be/PxcbT1wGkUo https://youtu.be/FGfhnS6skMQ https://youtu.be/Fd5ZlOxyZJ4
Wrap(
spacing: 6.0,
runSpacing: 6.0,
children: List<Widget>.generate(myList.length, (int index) {
return Chip(
label: Text(myList[index]),
onDeleted: () {
setState(() {
myList.removeAt(index);
});
},
);
}),
)