Commit 19dec0f0 authored by fallenstardust's avatar fallenstardust

在cardDetail处理完packlist再统一传给showCardList执行

parent 7cbd2914
...@@ -42,6 +42,7 @@ import cn.garymb.ygomobile.AppsSettings; ...@@ -42,6 +42,7 @@ import cn.garymb.ygomobile.AppsSettings;
import cn.garymb.ygomobile.Constants; import cn.garymb.ygomobile.Constants;
import cn.garymb.ygomobile.core.IrrlichtBridge; import cn.garymb.ygomobile.core.IrrlichtBridge;
import cn.garymb.ygomobile.lite.R; import cn.garymb.ygomobile.lite.R;
import cn.garymb.ygomobile.loader.CardLoader;
import cn.garymb.ygomobile.loader.ImageLoader; import cn.garymb.ygomobile.loader.ImageLoader;
import cn.garymb.ygomobile.ui.activities.BaseActivity; import cn.garymb.ygomobile.ui.activities.BaseActivity;
import cn.garymb.ygomobile.ui.adapters.BaseAdapterPlus; import cn.garymb.ygomobile.ui.adapters.BaseAdapterPlus;
...@@ -70,6 +71,7 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder { ...@@ -70,6 +71,7 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder {
private static final String TAG = String.valueOf(CardDetail.class); private static final String TAG = String.valueOf(CardDetail.class);
private final CardManager cardManager; private final CardManager cardManager;
private final PackManager packManager; private final PackManager packManager;
private final CardLoader cardLoader;
private final ImageView cardImage; private final ImageView cardImage;
private final TextView name; private final TextView name;
private final TextView relatable; private final TextView relatable;
...@@ -183,6 +185,7 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder { ...@@ -183,6 +185,7 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder {
lbSetCode = findViewById(R.id.label_setcode); lbSetCode = findViewById(R.id.label_setcode);
cardManager = DataManager.get().getCardManager(); cardManager = DataManager.get().getCardManager();
packManager = DataManager.get().getPackManager(); packManager = DataManager.get().getPackManager();
cardLoader = new CardLoader(context);
close.setOnClickListener((v) -> { close.setOnClickListener((v) -> {
if (mListener != null) { if (mListener != null) {
mListener.onClose(); mListener.onClose();
...@@ -239,7 +242,7 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder { ...@@ -239,7 +242,7 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder {
if (cardInfo == null) { if (cardInfo == null) {
return; return;
} }
mListener.onShowPackList(cardInfo); showPackList(cardInfo);
} }
}); });
} }
...@@ -314,6 +317,11 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder { ...@@ -314,6 +317,11 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder {
return mCardInfo; return mCardInfo;
} }
private void showPackList(Card cardInfo) {
Integer idToUse = cardInfo.Alias != 0 ? cardInfo.Alias : cardInfo.Code;
mListener.onShowPackList(packManager.getCards(cardLoader, idToUse));
}
public void setHighlightTextWithClickableSpans(String text) { public void setHighlightTextWithClickableSpans(String text) {
SpannableString spannableString = new SpannableString(text); SpannableString spannableString = new SpannableString(text);
spanStringList.clear(); // 清空之前的高亮文本列表 spanStringList.clear(); // 清空之前的高亮文本列表
...@@ -780,7 +788,7 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder { ...@@ -780,7 +788,7 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder {
void onImageUpdate(Card cardInfo); void onImageUpdate(Card cardInfo);
void onShowPackList(Card cardInfo); void onShowPackList(List<Card> packList);
void onSearchKeyWord(String keyword); void onSearchKeyWord(String keyword);
...@@ -808,7 +816,7 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder { ...@@ -808,7 +816,7 @@ public class CardDetail extends BaseAdapterPlus.BaseViewHolder {
} }
@Override @Override
public void onShowPackList(Card cardInfo) { public void onShowPackList(List<Card> packList) {
} }
......
...@@ -304,8 +304,8 @@ public class CardSearchFragment extends BaseFragemnt implements CardLoader.CallB ...@@ -304,8 +304,8 @@ public class CardSearchFragment extends BaseFragemnt implements CardLoader.CallB
} }
@Override @Override
public void onShowPackList(Card cardInfo) { public void onShowPackList(List<Card> packList) {
showPackList(cardInfo); showCardList(packList, false);//保持原收录顺序,不排序
} }
@Override @Override
...@@ -315,7 +315,7 @@ public class CardSearchFragment extends BaseFragemnt implements CardLoader.CallB ...@@ -315,7 +315,7 @@ public class CardSearchFragment extends BaseFragemnt implements CardLoader.CallB
@Override @Override
public void onGetRelatedCardList(List<Card> cardList) { public void onGetRelatedCardList(List<Card> cardList) {
showCardList(cardList, true); showCardList(cardList, true);//便于查看,排序
} }
@Override @Override
...@@ -364,19 +364,7 @@ public class CardSearchFragment extends BaseFragemnt implements CardLoader.CallB ...@@ -364,19 +364,7 @@ public class CardSearchFragment extends BaseFragemnt implements CardLoader.CallB
if (!cardList.isEmpty()) { if (!cardList.isEmpty()) {
onSearchResult(sort ? mCardLoader.sort(cardList) : cardList, false);//根据情况不同,判断是否调用CardLoader的sort方法排序List<Card> onSearchResult(sort ? mCardLoader.sort(cardList) : cardList, false);//根据情况不同,判断是否调用CardLoader的sort方法排序List<Card>
} else { } else {
Log.w("cc", "No related card found"); Log.w("cc", "No card found");
}
}
private void showPackList(Card cardInfo) {
Integer idToUse = cardInfo.Alias != 0 ? cardInfo.Alias : cardInfo.Code;
List<Card> packList = mPackManager.getCards(mCardLoader, idToUse);
if (packList != null) {
onSearchResult(packList, false);//为了保持原packlist的收录顺序,不调用CardLoader的sort方法排序List<Card>
} else {
Log.w("cc", "No pack found for the given ID/Alias: " + idToUse);
} }
} }
......
...@@ -562,8 +562,8 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte ...@@ -562,8 +562,8 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
} }
@Override @Override
public void onShowPackList(Card cardInfo) { public void onShowPackList(List<Card> packList) {
showPackList(cardInfo); showCardList(packList, false);//保持原收录顺序,不排序
} }
@Override @Override
...@@ -573,7 +573,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte ...@@ -573,7 +573,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
@Override @Override
public void onGetRelatedCardList(List<Card> cardList) { public void onGetRelatedCardList(List<Card> cardList) {
showCardList(cardList, true); showCardList(cardList, true);//便于查看,排序
} }
@Override @Override
...@@ -633,21 +633,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte ...@@ -633,21 +633,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
if (!cardList.isEmpty()) { if (!cardList.isEmpty()) {
onSearchResult(sort ? mCardLoader.sort(cardList) : cardList, false);//根据情况不同,判断是否调用CardLoader的sort方法排序List<Card> onSearchResult(sort ? mCardLoader.sort(cardList) : cardList, false);//根据情况不同,判断是否调用CardLoader的sort方法排序List<Card>
} else { } else {
Log.w("cc", "No related card found"); Log.w("cc", "No card found");
}
}
private void showPackList(Card cardInfo) {
Integer idToUse = cardInfo.Alias != 0 ? cardInfo.Alias : cardInfo.Code;
// 确保再次检查 PackManager 是否已经加载完成
if (mPackManager == null) {
return;
}
List<Card> packList = mPackManager.getCards(mCardLoader, idToUse);
if (packList != null) {
onSearchResult(packList, false);
} else {
Log.w("seesee", "No pack found for the given ID/Alias: " + idToUse);
} }
} }
......
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