I have a listview which have a imageview and some textview. How can I change imageview resource if I click on a image.
Asked
Active
Viewed 122 times
0
-
1What do you mean? Are you trying to change that same image you clicking? – Joe Hackerberg Jan 25 '17 at 13:01
-
2Also we will not provide a full solution for you. Have you tried anything yet? – JDurstberger Jan 25 '17 at 13:02
-
exactly. When i click on any image it will change to another – Mr Umar Jan 25 '17 at 13:03
-
it's hard without showing us some code , basicaly in the adapter you do onclick on item and change the image , show your adapter – yanivtwin Jan 25 '17 at 13:05
-
i add onclick listener on imageview but when i click on a image two and more images resources also change. – Mr Umar Jan 25 '17 at 13:07
1 Answers
0
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.

Alex Ferreira
- 38
- 1
- 10