【发布时间】:2021-06-28 17:53:32
【问题描述】:
我有一个带有小部件的 ListView.builder,我想从中删除项目,但是当我执行下面的行时没有任何反应。
if (mounted) {
setState(() {
verlustContentList.removeLast();
});
}
这就是我生成列表的方式:
generateList() async {
return verlustContentList = List.generate(
15,
(index) => VerlustContent(
key: Key(
index.toString(),
),
),
);
}
这就是我显示列表的方式:
StreamBuilder(
stream: generateList().asStream(),
builder: (BuildContext context, AsyncSnapshot snapshot) {
return ListView.builder(
itemCount: verlustContentList.length,
itemBuilder: (context, index) {
return verlustContentList[index];
},
);
},
);
VerlustContent 类是一个有状态的小部件。
【问题讨论】:
-
你是如何调用 setState 的?
-
在我的 Button 的 onPress 函数中,我调用 setState(() { verlustContentList.removeLast(); });
-
尝试在设置状态之外调用您的 removeLast 函数并添加 setState((){});之后...
-
不,不解决它