更改listview中的imageview位图

时间:2014-04-13 17:41:41

标签: android android-listview bitmap onclicklistener

我有一张带有图片和一些文字的列表视图。我设置了一个onclicklistener,这样当用户点击imageview时,该imageview的位图应该会改变。它发生了什么,imageview刚刚消失。

      holder.imageview.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {

                holder.imageview.setImageBitmap( bitmap);

        }
    });

2 个答案:

答案 0 :(得分:1)

您在评论中写道:

BitmapFactory.decodeResource(null, R.drawable.myicon);这是错误的,第一个参数为null,请改用以下代码:

Context context = getApplicationContext().getResources();
...
BitmapFactory.decodeResource(context.getResources(), R.drawable.myicon);

OR

BitmapFactory.decodeResource(getApplicationContext().getResources(), R.drawable.myicon);

然后通知ListView适配器图像已更改:

listViewAdapter.notifyDataSetChanged();

答案 1 :(得分:0)

试试这个:

    ImageButton ib = (ImageButton) findViewById(R.id.imgbtn);
    ImageView imgv = holder.(ImageView) findViewById(R.id.imagev);

    imgv.setOnClickListener(new OnClickListener() 
    {

        @Override
        public void onClick(View v) 
        {
            imgv.setImageBitmap(bm);
            adapter.notifyDataSetChanged();
        }
    });