Reputation: 54
I want to do something on position 0 of an adapter onBindViewHolder method. The code is shown below:
@Override
public void onBindViewHolder(final MyViewHolder myViewHolder, final int position) {
if(position == 0)
{
myViewHolder.transparentBlackView.setVisibility(View.GONE);
}
Picasso.with(context).load(urlList.get(position)).into(myViewHolder.pictureImageView);
transparentViewList.add(myViewHolder.transparentBlackView);
myViewHolder.positionTextView.setText(position+"");
}
But I don't know why code inside if block (myViewHolder.transparentBlackView.setVisibility(View.GONE);) runs on position 9 too?
Can someone help me?
Upvotes: 0
Views: 67
Reputation: 21053
You need to add else
part too.
public void onBindViewHolder(final MyViewHolder myViewHolder, final int position) {
if(position == 0)
{
myViewHolder.transparentBlackView.setVisibility(View.GONE);
}else{
myViewHolder.transparentBlackView.setVisibility(View.VISIBLE);
}
Picasso.with(context).load(urlList.get(position)).into(myViewHolder.pictureImageView);
transparentViewList.add(myViewHolder.transparentBlackView);
myViewHolder.positionTextView.setText(position+"");
}
Upvotes: 1