update item view in genre adapter

This commit is contained in:
dkanada 2020-05-01 01:14:34 +09:00
commit e3e846b225
2 changed files with 26 additions and 7 deletions

View file

@ -4,24 +4,27 @@ import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.RecyclerView;
import android.graphics.drawable.Drawable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.bumptech.glide.Glide;
import com.kabouzeid.gramophone.adapter.base.MediaEntryViewHolder;
import com.kabouzeid.gramophone.glide.CustomGlideRequest;
import com.kabouzeid.gramophone.glide.CustomPaletteTarget;
import com.kabouzeid.gramophone.model.Genre;
import com.kabouzeid.gramophone.util.MusicUtil;
import com.kabouzeid.gramophone.util.NavigationUtil;
import com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView;
import java.util.ArrayList;
import java.util.List;
public class GenreAdapter extends RecyclerView.Adapter<GenreAdapter.ViewHolder> implements FastScrollRecyclerView.SectionedAdapter {
@NonNull
private final AppCompatActivity activity;
private List<Genre> dataSet;
private int itemLayoutRes;
public GenreAdapter(@NonNull AppCompatActivity activity, List<Genre> dataSet, @LayoutRes int itemLayoutRes) {
@ -77,9 +80,25 @@ public class GenreAdapter extends RecyclerView.Adapter<GenreAdapter.ViewHolder>
holder.title.setText(genre.name);
}
if (holder.text != null) {
holder.text.setText(MusicUtil.getGenreInfoString(activity, genre));
}
loadImage(genre, holder);
}
protected void loadImage(Genre genre, final GenreAdapter.ViewHolder holder) {
if (holder.image == null) return;
CustomGlideRequest.Builder
.from(Glide.with(activity), genre.id)
.generatePalette(activity).build()
.into(new CustomPaletteTarget(holder.image) {
@Override
public void onLoadCleared(Drawable placeholder) {
super.onLoadCleared(placeholder);
}
@Override
public void onColorReady(int color) {
}
});
}
@Override

View file

@ -30,7 +30,7 @@ public class GenresFragment extends AbsLibraryPagerRecyclerViewFragment<GenreAda
protected GenreAdapter createAdapter() {
List<Genre> dataSet = getAdapter() == null ? new ArrayList<>() : getAdapter().getDataSet();
GenreAdapter adapter = new GenreAdapter(getLibraryFragment().getMainActivity(), dataSet, R.layout.item_list_no_image);
GenreAdapter adapter = new GenreAdapter(getLibraryFragment().getMainActivity(), dataSet, R.layout.item_list_single_row);
QueryUtil.getGenres(new MediaCallback() {
@Override
public void onLoadMedia(List<?> media) {