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.LayoutInflater;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.widget.TextView;
|
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.recyclerview.widget.DiffUtil;
|
import androidx.recyclerview.widget.DiffUtil;
|
||||||
import androidx.recyclerview.widget.ListAdapter;
|
import androidx.recyclerview.widget.ListAdapter;
|
||||||
import androidx.recyclerview.widget.RecyclerView;
|
|
||||||
|
|
||||||
import com.majinnaibu.monstercards.databinding.SimpleListItemBinding;
|
import com.majinnaibu.monstercards.databinding.SimpleListItemBinding;
|
||||||
import com.majinnaibu.monstercards.models.Monster;
|
import com.majinnaibu.monstercards.models.Monster;
|
||||||
|
import com.majinnaibu.monstercards.ui.shared.SimpleListItemViewHolder;
|
||||||
import com.majinnaibu.monstercards.utils.ItemCallback;
|
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>() {
|
private static final DiffUtil.ItemCallback<Monster> DIFF_CALLBACK = new DiffUtil.ItemCallback<Monster>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean areItemsTheSame(@NonNull Monster oldItem, @NonNull Monster newItem) {
|
public boolean areItemsTheSame(@NonNull Monster oldItem, @NonNull Monster newItem) {
|
||||||
@@ -34,13 +33,13 @@ public class LibraryRecyclerViewAdapter extends ListAdapter<Monster, LibraryRecy
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@NonNull
|
@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);
|
SimpleListItemBinding binding = SimpleListItemBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false);
|
||||||
return new ViewHolder(binding);
|
return new SimpleListItemViewHolder<>(binding);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBindViewHolder(final @NonNull ViewHolder holder, int position) {
|
public void onBindViewHolder(final @NonNull SimpleListItemViewHolder<Monster> holder, int position) {
|
||||||
Monster monster = getItem(position);
|
Monster monster = getItem(position);
|
||||||
holder.item = monster;
|
holder.item = monster;
|
||||||
holder.contentView.setText(monster.name);
|
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.LayoutInflater;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.widget.TextView;
|
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.recyclerview.widget.DiffUtil;
|
import androidx.recyclerview.widget.DiffUtil;
|
||||||
import androidx.recyclerview.widget.ListAdapter;
|
import androidx.recyclerview.widget.ListAdapter;
|
||||||
import androidx.recyclerview.widget.RecyclerView;
|
|
||||||
|
|
||||||
import com.majinnaibu.monstercards.databinding.SimpleListItemBinding;
|
import com.majinnaibu.monstercards.databinding.SimpleListItemBinding;
|
||||||
import com.majinnaibu.monstercards.models.Monster;
|
import com.majinnaibu.monstercards.models.Monster;
|
||||||
|
import com.majinnaibu.monstercards.ui.shared.SimpleListItemViewHolder;
|
||||||
import com.majinnaibu.monstercards.utils.ItemCallback;
|
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>() {
|
private static final DiffUtil.ItemCallback<Monster> DIFF_CALLBACK = new DiffUtil.ItemCallback<Monster>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean areItemsTheSame(@NonNull Monster oldItem, @NonNull Monster newItem) {
|
public boolean areItemsTheSame(@NonNull Monster oldItem, @NonNull Monster newItem) {
|
||||||
@@ -34,13 +33,13 @@ public class SearchResultsRecyclerViewAdapter extends ListAdapter<Monster, Searc
|
|||||||
|
|
||||||
@NonNull
|
@NonNull
|
||||||
@Override
|
@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);
|
SimpleListItemBinding binding = SimpleListItemBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false);
|
||||||
return new ViewHolder(binding);
|
return new SimpleListItemViewHolder<>(binding);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBindViewHolder(@NonNull final ViewHolder holder, int position) {
|
public void onBindViewHolder(@NonNull final SimpleListItemViewHolder<Monster> holder, int position) {
|
||||||
Monster monster = getItem(position);
|
Monster monster = getItem(position);
|
||||||
holder.item = monster;
|
holder.item = monster;
|
||||||
holder.contentView.setText(monster.name);
|
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