Reputation: 588
I have a listview and what I want is when I click on listView row, the Imageview which I have used in ListView row changes to different drawable. Here is the code what I have tried.
lvAdminData.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent,
View convertView, int position, long id) {
@SuppressWarnings("unused")
RelativeLayout rel=(RelativeLayout) adapter.getView(position, null,null);
ImageView arrowView=(ImageView) rel.getChildAt(2);
arrowView.setImageResource(R.drawable.info_details_navigation_white);
}
});
}
Here is the snapshot:
Upvotes: 0
Views: 902
Reputation: 679
try this in
lvAdminData.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent,View convertView, int position, long id) {
ImageView arrowView=(ImageView) convertView.findViewById(R.id.imageid);
arrowView.setImageResource(R.drawable.info_details_navigation_white);
}
});
Upvotes: 0
Reputation: 588
Solved: I have directly found id of imageview . Now its working.
lvAdminData
.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent,
View convertView, int position, long id) {
ImageView arrowView=(ImageView) convertView.findViewById(R.id.imageViewArrow);
arrowView.setImageResource(R.drawable.info_details_navigation);
onAdminItemClick(parent, position);
}
});
Upvotes: 0
Reputation: 24853
Try this..
lvAdminData.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent,View convertView, int position, long id) {
ImageView arrowView=(ImageView) convertView.findViewById(R.id.yourid); //replace with your ImageView id
arrowView.setImageResource(R.drawable.info_details_navigation_white);
}
});
Upvotes: 1
Reputation: 1403
Try
rel.invalidate() ;
after
arrowView.setImageResource(R.drawable.info_details_navigation_white);
Upvotes: 0