如何解决Futter:从ListTile重建ListView
我在ListView
中有一个FutureBuilder
。该FutureBuilder
从磁盘加载列表,加载后显示ListView
。该ListView
有一个自定义的ItemTile
用于显示每个加载的项目。每个ItemTile
都有一个用于复制自身的按钮(即,将自身的副本写入内存)。现在如何通知ListView
进行重建?
这是实现我的ItemTile
的方式(我只包含了相关代码)。
@override
Widget build(BuildContext context) {
return InkWell(
child: Card(
semanticContainer: false,//This flag should be false if the card contains multiple different types of content.
child: Container(
height: 200,width: double.infinity,child:
Align(
alignment: Alignment.topRight,child: getPopUpMenuButton(context),)
),),);
}
PopupMenuButton<String> getPopUpMenuButton(BuildContext context) {
return PopupMenuButton(
onSelected: (str) {
switch (str) {
case 'MAKECOPY':
{
Item newItem = Item.clone(this.item,sameUID: false);
Scaffold.of(context).setState(() {
_itemManager.save(newItem);
});
}
}
},icon: Icon(Icons.more_vert),itemBuilder: (_) => <PopupMenuItem<String>>[
new PopupMenuItem<String>(
value: 'MAKECOPY',child: Text(AppLocalizations.of(context).get('edit_as_copy'))),],);
}
我以为Scaffold.of(context).setState
可以达到目的,但事实并非如此。如何正确地从列表项中调用ListView
/ FutureBuilder
的重建?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。