我目前遇到更新无状态小部件的问题。有什么我想念的吗。基本上当我点击小部件中的图标时,我希望它从列表中删除数据并更新 UI,因此图标数据不再显示
Future<void> _removeIncluded(BuildContext context) async {
for (int i = 0; i < includedList.length; i++) {
print(includedList[i].title);
print(title);
if (includedList[i].title == this.title) {
includedList.remove(includedList[i]);
included.remove(this.title);
// includedList.removeAt(i);
// included.removeAt(i);
}
}
rebuildAllChildren(context);
}
void rebuildAllChildren(BuildContext context) {
void rebuild(Element el) {
el.markNeedsBuild();
el.visitChildren(rebuild);
}
(context as Element).visitChildren(rebuild);
}
Widget build(BuildContext context) {
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 2.5),
child: Container(
decoration: BoxDecoration(
color: Color(0xffDEDEDE), borderRadius: BorderRadius.circular(4)),
child: Expanded(
child: Row(
// padding: const EdgeInsets.all(8),
children: [
Padding(
padding: const EdgeInsets.all(8),
child: Text(
title.toString(),
style: TextStyle(
fontFamily: "Montserrat Regular", fontSize: 12),
),
),
IconButton(
icon: Icon(Icons.close_outlined, size: 20),
onPressed: () {
_removeIncluded(context);
})
]),
),
));