I have a custom listview with text and play-pause buttons. I'm trying to make play button invisible when play button clicked. But when i do that in onClick, button at wrong position is disappearing on listview. Like; buttons : A - B - C - D - E, when i click C, then E become invisible. I have no idea how to handle, please help.

```
public class MyListAdapter extends ArrayAdapter<String> {

private String[] gelenurl;
List<String> gelen_ad;
MediaPlayer mPlayer= new MediaPlayer();

private int[] IMAGE_ID = {R.drawable.police};
private int layout;
public MyListAdapter(Context context, int resource, List<String> objects, String[] arr) {
    super(context, resource, objects);
    layout=resource;
    gelenurl=arr;
    gelen_ad=objects;
}

ViewHolder viewHolder = new ViewHolder();
@NonNull
@Override

public View getView(final int position, View convertView, ViewGroup parent) {

    ViewHolder mainViewholder = null;
    convertView=null;

    if(convertView==null) {
        LayoutInflater inflater = LayoutInflater.from(getContext());
        convertView=inflater.inflate(layout, parent, false);

        viewHolder.img = (ImageView) convertView.findViewById(R.id.list_item_thumbnail);
        viewHolder.img.setImageResource(IMAGE_ID[0]);
        viewHolder.title = (TextView) convertView.findViewById(R.id.list_item_text);
        viewHolder.title.setText(getItem(position));
        viewHolder.button = (Button) convertView.findViewById(R.id.list_item_btn);
        viewHolder.stop_button = (Button) convertView.findViewById(R.id.list_item_stop_btn);

        convertView.setTag(viewHolder);

    }

    else {

        mainViewholder = (ViewHolder) convertView.getTag();
        mainViewholder.title.setText(getItem(position));

    }

    viewHolder.button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            try {

                viewHolder.button.setVisibility(View.INVISIBLE);
                radioLinks(gelenurl[position]);

            } catch (IOException e) {
                e.printStackTrace();
            }
        }

        public void radioLinks(String city) throws IOException {

            if(mPlayer.isPlaying()) {

                mPlayer.stop();
                mPlayer.reset();

            }

            mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
            mPlayer.setDataSource(city);
            mPlayer.prepareAsync();

            mPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                @Override
                public void onPrepared(MediaPlayer mp) {

                    mPlayer.start();

                }
            });

        }

    });

    viewHolder.stop_button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            mPlayer.stop();
            mPlayer.reset();
        }
    });
    return convertView;
}

```

}