从 ListView 更改特定元素
Posted
技术标签:
【中文标题】从 ListView 更改特定元素【英文标题】:Change specific element from ListView 【发布时间】:2021-07-14 23:07:12 【问题描述】:我有一个 ListView 小部件,它基于数组呈现项目。我想更改特定项目 onTap 的背景颜色。
我制作了一个 GestureDetector,将项目包装在 ListView 中,然后 onTap 一个变量(我之前在全局范围内定义,名为 backgroundColor)更改它的值。但这会改变所有项目的背景颜色,我希望它只改变用户点击的特定项目的背景颜色。
有什么想法吗?
【问题讨论】:
分享您的代码,这样会更容易回答并直接指出问题的出处,从而更快地解决问题。 【参考方案1】:像这样清除一个 int
Int isselect=-1;
Then
Ontap:=> setstate()
Isslected =index;
Then you can how use that is selected as bool
Like
Is selected==index? Container(): sizebox(),
对不起,我编写代码的方式,我在移动设备上,这就是为什么...
希望它对你有用, 如是。标记并投票。
【讨论】:
你甚至可以用它来改变颜色......就像这样。 ....颜色:Isslected==index:colors.red:colors.black【参考方案2】:尽管将代码与问题一起粘贴会很有帮助,但我认为“索引”可能是您的解决方案。将列表视图的索引作为参数传递给 onTap 并仅针对该索引修改 bgColor。
【讨论】:
以上是关于从 ListView 更改特定元素的主要内容,如果未能解决你的问题,请参考以下文章
使用自定义适配器更改ListView中特定行中的ImageView
使用自定义适配器更改 ListView 中特定行中的 ImageView