update item view in genre adapter
This commit is contained in:
parent
b779004a2c
commit
e3e846b225
2 changed files with 26 additions and 7 deletions
|
|
@ -4,24 +4,27 @@ import androidx.annotation.LayoutRes;
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.appcompat.app.AppCompatActivity;
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
import androidx.recyclerview.widget.RecyclerView;
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
|
import android.graphics.drawable.Drawable;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
|
||||||
|
import com.bumptech.glide.Glide;
|
||||||
import com.kabouzeid.gramophone.adapter.base.MediaEntryViewHolder;
|
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.model.Genre;
|
||||||
import com.kabouzeid.gramophone.util.MusicUtil;
|
import com.kabouzeid.gramophone.util.MusicUtil;
|
||||||
import com.kabouzeid.gramophone.util.NavigationUtil;
|
import com.kabouzeid.gramophone.util.NavigationUtil;
|
||||||
import com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView;
|
import com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public class GenreAdapter extends RecyclerView.Adapter<GenreAdapter.ViewHolder> implements FastScrollRecyclerView.SectionedAdapter {
|
public class GenreAdapter extends RecyclerView.Adapter<GenreAdapter.ViewHolder> implements FastScrollRecyclerView.SectionedAdapter {
|
||||||
|
|
||||||
@NonNull
|
|
||||||
private final AppCompatActivity activity;
|
private final AppCompatActivity activity;
|
||||||
private List<Genre> dataSet;
|
private List<Genre> dataSet;
|
||||||
|
|
||||||
private int itemLayoutRes;
|
private int itemLayoutRes;
|
||||||
|
|
||||||
public GenreAdapter(@NonNull AppCompatActivity activity, List<Genre> dataSet, @LayoutRes 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);
|
holder.title.setText(genre.name);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (holder.text != null) {
|
loadImage(genre, holder);
|
||||||
holder.text.setText(MusicUtil.getGenreInfoString(activity, genre));
|
}
|
||||||
}
|
|
||||||
|
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
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ public class GenresFragment extends AbsLibraryPagerRecyclerViewFragment<GenreAda
|
||||||
protected GenreAdapter createAdapter() {
|
protected GenreAdapter createAdapter() {
|
||||||
List<Genre> dataSet = getAdapter() == null ? new ArrayList<>() : getAdapter().getDataSet();
|
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() {
|
QueryUtil.getGenres(new MediaCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onLoadMedia(List<?> media) {
|
public void onLoadMedia(List<?> media) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue