更新listview onclick中的图片

时间:2014-03-07 17:16:49

标签: android android-listview

我有一个列表视图,其中包含每个元素中的图片和文字。如果用户点击图像,我必须能够更改其中一个图像,如果用户再次单击它,则将其更改回原始图像。我有一个基本适配器类,我用它来将数据添加到列表视图。在getview方法中,我为图像设置了一个onclick监听器来改变它。我遇到的问题是它只会改变,如果我滚动元素并回到它。我该如何更改,以便更新列表视图而不滚动它。

2 个答案:

答案 0 :(得分:0)

只需在ListView上设置OnItemClickListener

其余的使用ImageView.setImageDrawable或类似内容非常简单。

答案 1 :(得分:0)

您可以使用方法

notifyDataSetChanged();

更改listViewAdapter(谁扩展BaseAdapter)中的图像src后

例如

public class ProductItemListView extends ListView {

    public ProductItemListView() {
        super(context);
        mProductAdapter = new ProductItemAdapter(context);
        this.setAdapter(mProductAdapter);
    }
}



public class ProductItemAdapter extends BaseAdapter {
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ...

        myImage.setBackgroundResource(R.drawable.other_image);
        notifyDataSetChanged();

    }
}