android - 单击按钮时如何过滤列表视图的内容?
问题描述
我还没有使用 API 或 firebase,数据存储在本地。这是我的代码======>>
Widget _buildhouse(BuildContext contex, int index){
Size size = MediaQuery.of(context).size;
House house = houselist[index]; //houselist is the list of all houses
return GestureDetector(
onTap: (){
setState(() {]
house = filteredhouse[index]; //this code wont be executed
print(house.price);
});
Navigator.push(context, MaterialPageRoute(builder: (_) => DetailsScreen(house),));
},
所以我评论的那两行是我猜的重要的,打印代码被执行但不是另一行。如果我说“house = filteredhouse[index];” 一开始,我会得到过滤后的值。但是单击按钮时不会更改
解决方案
通过使用此函数 void _filtered(){ setState(() { houselist = filteredhouse; }); 解决了它 } 然后在 setState 中调用它
推荐阅读
- typescript - TypeScript 是否能够基于另一个参数来塑造一个参数?
- javascript - 一种迭代 Map() 对象的 .set 方法的方法?
- excel - 通过 Outlook 电子邮件通过 VBA 宏在同一工作簿中发送多个工作表?
- java - 反向链接列表,同时保留原始节点
- bash - 查找具有给定祖先的提交
- rust - 如何解决可变借用和不可变借用的共存问题?
- numbers - python库快速生成上一个和下一个素数
- atom-editor - 自动大写关键字(对于 SQL)?
- javascript - 如何通过单击使工具提示隐藏?
- android - 电子邮件意图 - 与此操作关联的所有应用程序均已关闭、阻止或未安装