package com.nf2m.adapter; import android.content.Context; import android.database.Cursor; import android.provider.MediaStore; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.view.View; import android.view.ViewGroup; import com.nf2m.R; import com.nf2m.viewholder.PlaylistItemViewHolder; public class PlaylistsCursorAdapter extends LibraryCursorAdapter<PlaylistItemViewHolder> { @Nullable private Cursor playlistCursor; public PlaylistsCursorAdapter(Context context, Cursor c) { super(context, c, MediaStore.Audio.PlaylistsColumns.NAME); playlistCursor = c; } @NonNull @Override public PlaylistItemViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View itemView = inflateCustomViewAndListView(parent, R.layout.playlists_custom_layout); return new PlaylistItemViewHolder(itemView, clickListener, longClickListener); } @Override public void onBindViewHolder(@NonNull PlaylistItemViewHolder holder, int position) { playlistCursor = getCursor(); if (playlistCursor.moveToPosition(position)) { String playlistName = playlistCursor.getString(getColumnIndex(MediaStore.Audio.PlaylistsColumns.NAME)); holder.tvPlaylistName.setText(playlistName); holder.itemView.setActivated(isPositionChecked(position)); } } @Override public int getItemCount() { playlistCursor = getCursor(); return playlistCursor.getCount(); } }