My ListView
item consists of the following components - ImageView
and then under it there are two more ImageViews
- like
and dislike
.
So when I click on either like
or dislike
I want to be able to get corresponding ListView
item id
.
The only way that I am able to do it at the moment is if I first click on the ListView
item and then on the like
ImageView
.
My question is - is there any way to get corresponding ListView
item id
without having to first click on the ListView
item and only then on the like
ImageView
?
Here is my code
cursorAdapter = new PostCursorAdapter(this, null, 0);
ListView list = (ListView)findViewById(android.R.id.list);
list.setAdapter(cursorAdapter);
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, final long l) {
ivLike = (ImageView)findViewById(R.id.ivLike);
ivLike.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.d("Like","Like button for the post with id=" + l + " has been clicked");
}
});
}
});
I was able to solve it myself. What I needed to do was to add setOnClickListener
to my like
and dislike
ImageViews
not in MainActivity
but in PostCursorAdapter
. Thanks everyone!