简体   繁体   中英

How to change ImageView resource in nested listview items?

在此处输入图片说明

I have a listview which have a imageview and some textview. How can I change imageview resource if I click on a image.

在此处输入图片说明

If I understood your logic, you need to:

  • Set onItemClickListener
  • save the position selected inside the listener
  • set onClickListener of the images inside the adapter
  • use the position selected to recover the imagem from the data saved in the adapter

Código setOnItemClickListener:

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        lastSelectedItem = position;
        // Set the collor of the backgroud of the row in the listView, remmember to test if the flag already have been initialized;
    }
});

Código setOnClickListener:

onClick(View v){
    // use some field thought the constructor of the adapter
    Drawable draw = data.getImage(lastSelectedItem);
    ImageView img = (ImageView) v;
    img.setDrawable(draw);
    // set the lastSelectedItem and change the color of the background
}

I hope that help you.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM