Extracts the ViewHolder for SimpleListItemBinding to SimpleListItemViewHolder<T>.
This commit is contained in:
@@ -2,18 +2,17 @@ package com.majinnaibu.monstercards.ui.library;
|
||||
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.DiffUtil;
|
||||
import androidx.recyclerview.widget.ListAdapter;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.majinnaibu.monstercards.databinding.SimpleListItemBinding;
|
||||
import com.majinnaibu.monstercards.models.Monster;
|
||||
import com.majinnaibu.monstercards.ui.shared.SimpleListItemViewHolder;
|
||||
import com.majinnaibu.monstercards.utils.ItemCallback;
|
||||
|
||||
public class LibraryRecyclerViewAdapter extends ListAdapter<Monster, LibraryRecyclerViewAdapter.ViewHolder> {
|
||||
public class LibraryRecyclerViewAdapter extends ListAdapter<Monster, SimpleListItemViewHolder<Monster>> {
|
||||
private static final DiffUtil.ItemCallback<Monster> DIFF_CALLBACK = new DiffUtil.ItemCallback<Monster>() {
|
||||
@Override
|
||||
public boolean areItemsTheSame(@NonNull Monster oldItem, @NonNull Monster newItem) {
|
||||
@@ -34,13 +33,13 @@ public class LibraryRecyclerViewAdapter extends ListAdapter<Monster, LibraryRecy
|
||||
|
||||
@Override
|
||||
@NonNull
|
||||
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
public SimpleListItemViewHolder<Monster> onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
SimpleListItemBinding binding = SimpleListItemBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false);
|
||||
return new ViewHolder(binding);
|
||||
return new SimpleListItemViewHolder<>(binding);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(final @NonNull ViewHolder holder, int position) {
|
||||
public void onBindViewHolder(final @NonNull SimpleListItemViewHolder<Monster> holder, int position) {
|
||||
Monster monster = getItem(position);
|
||||
holder.item = monster;
|
||||
holder.contentView.setText(monster.name);
|
||||
@@ -51,14 +50,4 @@ public class LibraryRecyclerViewAdapter extends ListAdapter<Monster, LibraryRecy
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
static class ViewHolder extends RecyclerView.ViewHolder {
|
||||
final TextView contentView;
|
||||
Monster item;
|
||||
|
||||
ViewHolder(SimpleListItemBinding binding) {
|
||||
super(binding.getRoot());
|
||||
contentView = binding.content;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,18 +2,17 @@ package com.majinnaibu.monstercards.ui.search;
|
||||
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.DiffUtil;
|
||||
import androidx.recyclerview.widget.ListAdapter;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.majinnaibu.monstercards.databinding.SimpleListItemBinding;
|
||||
import com.majinnaibu.monstercards.models.Monster;
|
||||
import com.majinnaibu.monstercards.ui.shared.SimpleListItemViewHolder;
|
||||
import com.majinnaibu.monstercards.utils.ItemCallback;
|
||||
|
||||
public class SearchResultsRecyclerViewAdapter extends ListAdapter<Monster, SearchResultsRecyclerViewAdapter.ViewHolder> {
|
||||
public class SearchResultsRecyclerViewAdapter extends ListAdapter<Monster, SimpleListItemViewHolder<Monster>> {
|
||||
private static final DiffUtil.ItemCallback<Monster> DIFF_CALLBACK = new DiffUtil.ItemCallback<Monster>() {
|
||||
@Override
|
||||
public boolean areItemsTheSame(@NonNull Monster oldItem, @NonNull Monster newItem) {
|
||||
@@ -34,13 +33,13 @@ public class SearchResultsRecyclerViewAdapter extends ListAdapter<Monster, Searc
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
public SimpleListItemViewHolder<Monster> onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
SimpleListItemBinding binding = SimpleListItemBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false);
|
||||
return new ViewHolder(binding);
|
||||
return new SimpleListItemViewHolder<>(binding);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull final ViewHolder holder, int position) {
|
||||
public void onBindViewHolder(@NonNull final SimpleListItemViewHolder<Monster> holder, int position) {
|
||||
Monster monster = getItem(position);
|
||||
holder.item = monster;
|
||||
holder.contentView.setText(monster.name);
|
||||
@@ -50,14 +49,4 @@ public class SearchResultsRecyclerViewAdapter extends ListAdapter<Monster, Searc
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public static class ViewHolder extends RecyclerView.ViewHolder {
|
||||
final TextView contentView;
|
||||
Monster item;
|
||||
|
||||
ViewHolder(SimpleListItemBinding binding) {
|
||||
super(binding.getRoot());
|
||||
contentView = binding.content;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.majinnaibu.monstercards.ui.shared;
|
||||
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.majinnaibu.monstercards.databinding.SimpleListItemBinding;
|
||||
|
||||
public class SimpleListItemViewHolder<T> extends RecyclerView.ViewHolder {
|
||||
public final TextView contentView;
|
||||
public T item;
|
||||
|
||||
public SimpleListItemViewHolder(SimpleListItemBinding binding) {
|
||||
super(binding.getRoot());
|
||||
contentView = binding.content;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user