Commit fc1d78dc authored by fallenstardust's avatar fallenstardust

更改使用decklistadapter

parent 63375b8a
......@@ -9,7 +9,7 @@ public class DeckFile extends TextSelect {
private final File path;
private final String fullName;
//
//分类
private String typeName;
private int firstCode;
......
package cn.garymb.ygomobile.ui.adapters;
import android.content.Context;
import android.annotation.SuppressLint;
import android.graphics.Color;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.listener.OnItemClickListener;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
......@@ -20,23 +19,24 @@ import cn.garymb.ygomobile.bean.events.DeckFile;
import cn.garymb.ygomobile.lite.R;
import cn.garymb.ygomobile.loader.ImageLoader;
import cn.garymb.ygomobile.ui.cards.deck.ImageTop;
import cn.garymb.ygomobile.utils.YGOUtil;
import ocgcore.data.LimitList;
public class DeckListAdapter<T extends TextSelect> extends BaseRecyclerAdapterPlus<DeckFile, BaseViewHolder>{
public class DeckListAdapter<T extends TextSelect> extends BaseQuickAdapter<T, DeckViewHolder> {
private ImageLoader imageLoader;
private ImageTop mImageTop;
private LimitList mLimitList;
private boolean mEnableSwipe = false;
private DeckInfo deckInfo;
private DeckFile deckFile;
private TextSelectAdapter.OnItemSelectListener onItemSelectListener;
private OnItemSelectListener onItemSelectListener;
private int selectPosition;
private boolean isSelect;
private boolean isManySelect;
private List<T> selectList;
public DeckListAdapter(Context context, List<T> data, int select) {
super(context, R.layout.item_server_info_swipe);
public DeckListAdapter(List<T> data, int select) {
super(R.layout.item_deck_list_swipe, data);
this.selectPosition = select;
if (select >= 0)
isSelect = true;
......@@ -55,22 +55,31 @@ public class DeckListAdapter<T extends TextSelect> extends BaseRecyclerAdapterPl
onItemSelectListener.onItemSelect(position, data.get(position).getObject());
}
});
}
@SuppressLint("ResourceType")
@Override
protected void convert(@NonNull com.chad.library.adapter.base.viewholder.BaseViewHolder baseViewHolder, DeckFile deck) {
imageLoader.bindImage(baseViewHolder.getView(R.id.card_image), deck.getFirstCode(), ImageLoader.Type.small);
baseViewHolder.setText(R.id.tv_name,deck.getName());
baseViewHolder.setText(R.id.count_main,deckInfo.getMainCount());
baseViewHolder.setText(R.id.count_ex,deckInfo.getExtraCount());
baseViewHolder.setText(R.id.count_main,deckInfo.getSideCount());
protected void convert(DeckViewHolder holder, T item) {
int position = holder.getAdapterPosition();
holder.deckName.setText(item.getName());
if (isManySelect) {
if (selectList.contains(item))
holder.deckName.setBackgroundColor(YGOUtil.c(R.color.colorMain));
else
holder.deckName.setBackgroundResource(Color.TRANSPARENT);
} else if (isSelect) {
if (position == selectPosition) {
holder.deckName.setBackgroundColor(YGOUtil.c(R.color.colorMain));
} else {
holder.deckName.setBackgroundResource(Color.TRANSPARENT);
}
}else {
holder.deckName.setBackgroundResource(Color.TRANSPARENT);
}
imageLoader.bindImage(cardImage, item.getFirstCode(), ImageLoader.Type.small);
}
public void setEnableSwipe(boolean enableSwipe) {
mEnableSwipe = enableSwipe;
}
public void setSelectPosition(int selectPosition) {
this.selectPosition = selectPosition;
}
......@@ -106,7 +115,7 @@ public class DeckListAdapter<T extends TextSelect> extends BaseRecyclerAdapterPl
return selectPosition;
}
public void setOnItemSelectListener(TextSelectAdapter.OnItemSelectListener onItemSelectListener) {
public void setOnItemSelectListener(OnItemSelectListener onItemSelectListener) {
this.onItemSelectListener = onItemSelectListener;
}
......@@ -114,7 +123,7 @@ public class DeckListAdapter<T extends TextSelect> extends BaseRecyclerAdapterPl
void onItemSelect(int position, T item);
}
}
class DeckViewHolder extends BaseRecyclerAdapterPlus.BaseViewHolder {
class DeckViewHolder extends com.chad.library.adapter.base.viewholder.BaseViewHolder {
ImageView cardImage;
ImageView prerelease_star;
TextView deckName;
......@@ -125,11 +134,11 @@ class DeckViewHolder extends BaseRecyclerAdapterPlus.BaseViewHolder {
public DeckViewHolder(View view) {
super(view);
view.setTag(view.getId(), this);
cardImage = $(R.id.card_image);
deckName = $(R.id.deck_name);
main = $(R.id.count_main);
extra = $(R.id.count_ex);
side = $(R.id.count_ex);
prerelease_star = $(R.id.prerelease_star);
cardImage = findView(R.id.card_image);
deckName = findView(R.id.deck_name);
main = findView(R.id.count_main);
extra = findView(R.id.count_ex);
side = findView(R.id.count_ex);
prerelease_star = findView(R.id.prerelease_star);
}
}
\ No newline at end of file
......@@ -36,6 +36,7 @@ import cn.garymb.ygomobile.adapter.TextBaseAdapter;
import cn.garymb.ygomobile.bean.DeckType;
import cn.garymb.ygomobile.bean.events.DeckFile;
import cn.garymb.ygomobile.lite.R;
import cn.garymb.ygomobile.ui.adapters.DeckListAdapter;
import cn.garymb.ygomobile.ui.adapters.TextSelectAdapter;
import cn.garymb.ygomobile.ui.mycard.mcchat.util.ImageUtil;
import cn.garymb.ygomobile.ui.plus.DialogPlus;
......@@ -90,7 +91,7 @@ public class YGODialogUtil {
private final TextView tv_copy;
private final TextView tv_del;
private final TextSelectAdapter<DeckType> typeAdp;
private final TextSelectAdapter<DeckFile> deckAdp;
private final DeckListAdapter<DeckFile> deckAdp;
private final Dialog ygoDialog;
public ViewHolder(Context context, String selectDeckPath, OnDeckMenuListener onDeckMenuListener) {
......@@ -156,7 +157,7 @@ public class YGODialogUtil {
}
}
typeAdp = new TextSelectAdapter<>(typeList, typeSelectPosition);
deckAdp = new TextSelectAdapter<>(deckList, deckSelectPosition);
deckAdp = new DeckListAdapter<>(deckList, deckSelectPosition);
rv_type.setAdapter(typeAdp);
rv_deck.setAdapter(deckAdp);
typeAdp.setOnItemSelectListener(new TextSelectAdapter.OnItemSelectListener<DeckType>() {
......@@ -177,7 +178,7 @@ public class YGODialogUtil {
deckAdp.notifyDataSetChanged();
}
});
deckAdp.setOnItemSelectListener(new TextSelectAdapter.OnItemSelectListener<DeckFile>() {
deckAdp.setOnItemSelectListener(new DeckListAdapter.OnItemSelectListener<DeckFile>() {
@Override
public void onItemSelect(int position, DeckFile item) {
if (deckAdp.isManySelect()) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment