0

我有一个要求,从位于视图标题部分的按钮切换列表视图项的图像。

所以我有一个使用自定义 BaseAdapter 的列表视图,适配器非常基本,每个项目都有一个 ImageView 和一个 TextView。

标题部分将有 2 个按钮,每个按钮都有一个与之关联的包。例如。

按钮 A 将具有PACKAGE {A=Product 1, C=Product 3, G=Product 7}
按钮 B 将具有PACKAGE {B=Product 2, D=Product 4, G=Product 7}

Listview 项目将具有以下项目以及图像。

{A=Product 1, B=Product 2, 
C=Product 3, D=Product 4, 
E=Product 5, F=Product 6, G=Product 7}

模拟列表视图

image green - A Product 1 
image green - B Product 2
image green - C Product 3
image green - D Product 4
image green - E Product 5
image green - F Product 6 
image green - G Product 7

如果用户选择按钮“A”,则列表视图项目的图像应仅针对按钮“A”包列表中的项目从红色变为绿色。所以对于这个例子,只有列表视图项 A、C 和 G 将其图像项更改为绿色。

如何在不让用户实际单击列表视图项目的情况下更新列表视图项目?

4

1 回答 1

0

我想你已经OnClickListener为你的 2 个按钮实现了。

现在,当单击一个按钮时,您可以保存在全局变量中单击的按钮类型。

之后对你调用 notifyDataChanged() Adapter

当 notifyDataChanged() 被调用时getView(int position, View convertView, ViewGroup parent),你的Adapter被调用。

为 ListView 中的每个可见项调用 getView 方法。现在在 getView 方法中,您只需切换图像是单击按钮 A 还是单击按钮 B。

有关如何自定义您的示例,请Adapter查看ListView这篇文章:http ://www.androidhive.info/2012/02/android-custom-listview-with-image-and-text/

于 2013-01-14T22:48:43.203 回答