Facing issues over ListView repeating elements

Viewed 19

//After 6/7 item, it starts repeating the first item ** Anyone can please explain to me the process** @Override public long getItemId(int i) { return 0; } public class ViewHolder{ TextView textView_songName,textView_artist; ImageView imageView_play,imageView_stop; private View convertView; LayoutInflater layoutInflater=(LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    public ViewHolder() {

            convertView = layoutInflater.inflate(layout, null);
            textView_songName = convertView.findViewById(R.id.textView_song);
            textView_artist = convertView.findViewById(R.id.textView_artist);
            imageView_play = convertView.findViewById(R.id.image_play);
            imageView_stop = convertView.findViewById(R.id.image_stop);
        }

}

@Override
public View getView(int i, View convertView, ViewGroup parent) {
    final ViewHolder viewholder = new ViewHolder();
    if (convertView == null) {
        convertView = viewholder.convertView;
    }
    else {

    }
        final Music music = myList.get(i);
        viewholder.textView_songName.setText(music.getSongName());
        viewholder.textView_artist.setText(music.getArtist());
        viewholder.imageView_play.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (flag) {
                    medialayer = MediaPlayer.create(context, music.getSongs());
                    flag = false;
                }
                if (medialayer.isPlaying()) {
                    medialayer.pause();
                    viewholder.imageView_play.setImageResource(R.drawable.ic_play);
                } else {
                    medialayer.start();
                    viewholder.imageView_play.setImageResource(R.drawable.ic_pause);
                }

            }
        });
        viewholder.imageView_stop.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (!flag) {
                    medialayer.stop();
                    medialayer.release();
                    flag = true;
                }
                viewholder.imageView_stop.setImageResource(R.drawable.ic_stop);
                viewholder.imageView_play.setImageResource(R.drawable.ic_play);
            }
        });
    return convertView;
}

}

0 Answers
Related