Commit 4643a8a1 authored by fallenstardust's avatar fallenstardust

竖屏组卡器对卡包展示不显示额外和副卡组

parent 18b078ba
......@@ -9,8 +9,8 @@ android {
minSdkVersion 21
//noinspection ExpiredTargetSdkVersion
targetSdkVersion 29
versionCode 310020906
versionName "3.10.2"
versionCode 310030923
versionName "3.10.3"
flavorDimensions "versionCode"
vectorDrawables.useSupportLibrary = true
ndk {
......
......@@ -367,7 +367,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
//region load deck
private void loadDeckFromFile(File file) {
if (!mCardLoader.isOpen() || file == null || !file.exists()) {
setCurDeck(new DeckInfo());
setCurDeck(new DeckInfo(), file.getParent().equals(mSettings.getPackDeckDir()) ? true : false);
return;
}
DialogPlus dlg = DialogPlus.show(getContext(), null, getString(R.string.loading));
......@@ -379,7 +379,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
}
}).done((rs) -> {
dlg.dismiss();
setCurDeck(rs);
setCurDeck(rs, file.getParent().equals(mSettings.getPackDeckDir()) ? true : false);
});
}
......@@ -416,7 +416,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
mCardSelector.initItems();
initLimitListSpinners(mLimitSpinner, mCardLoader.getLimitList());
//设置当前卡组
setCurDeck(rs);
setCurDeck(rs, ydk.getParent().equals(mSettings.getPackDeckDir()) ? true : false);
//设置收藏夹
mCardSelector.showFavorites(false);
});
......@@ -425,7 +425,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
/**
* 设置当前卡组
*/
private void setCurDeck(DeckInfo deckInfo) {
private void setCurDeck(DeckInfo deckInfo, boolean isPack) {
if (deckInfo == null) {
deckInfo = new DeckInfo();
}
......@@ -435,7 +435,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
mSettings.setLastDeckPath(file.getAbsolutePath());
tv_deck.setText(name);
}
mDeckAdapater.setDeck(deckInfo);
mDeckAdapater.setDeck(deckInfo, isPack);
mDeckAdapater.notifyDataSetChanged();
}
......@@ -777,7 +777,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
builder.setMessage(R.string.question_clear_deck);
builder.setMessageGravity(Gravity.CENTER_HORIZONTAL);
builder.setLeftButtonListener((dlg, rs) -> {
mDeckAdapater.setDeck(new DeckInfo());
mDeckAdapater.setDeck(new DeckInfo(), false);
mDeckAdapater.notifyDataSetChanged();
dlg.dismiss();
});
......@@ -835,12 +835,12 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
});
builder.setRightButtonListener((dlg, rs) -> {
dlg.dismiss();
setCurDeck(null);
setCurDeck(null, false);
inputDeckName(null, savePath, true);
});
builder.setOnCloseLinster((dlg) -> {
dlg.dismiss();
setCurDeck(null);
setCurDeck(null, false);
inputDeckName(null, savePath, true);
});
builder.show();
......@@ -1160,7 +1160,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
File ydks = new File(ORI_DECK);
File[] subYdks = ydks.listFiles();
for (File files : subYdks) {
if(files.getName().contains("-") && files.getName().contains(" new cards"))
if (files.getName().contains("-") && files.getName().contains(" new cards"))
files.delete();
}
} catch (Throwable e) {
......@@ -1199,7 +1199,7 @@ public class DeckManagerFragment extends BaseFragemnt implements RecyclerViewIte
if (file != null) {
loadDeckFromFile(file);
} else {
setCurDeck(new DeckInfo());
setCurDeck(new DeckInfo(), false);
}
return;
}
......
......@@ -190,7 +190,8 @@ public class DeckAdapater extends RecyclerView.Adapter<DeckViewHolder> implement
}
@Override
public @Nullable Card getCard(int posotion) {
public @Nullable
Card getCard(int posotion) {
int count = mMainCount;
int index = 0;
if (posotion < count) {
......@@ -389,23 +390,24 @@ public class DeckAdapater extends RecyclerView.Adapter<DeckViewHolder> implement
return mLimitList;
}
public @Nullable File getYdkFile(){
if(mDeckInfo != null){
public @Nullable
File getYdkFile() {
if (mDeckInfo != null) {
return mDeckInfo.source;
}
return null;
}
public void setDeck(DeckInfo deckinfo) {
public void setDeck(DeckInfo deckinfo, boolean isPack) {
mDeckInfo = deckinfo;
if (deckinfo != null) {
loadData(deckinfo);
loadData(deckinfo, isPack);
}
mDeckMd5 = DeckItemUtils.makeMd5(mItems);
if (!isPack) mDeckMd5 = DeckItemUtils.makeMd5(mItems);
}
public DeckInfo read(CardLoader cardLoader, File file, LimitList limitList) {
if(limitList != null) {
if (limitList != null) {
setLimitList(limitList);
}
return DeckLoader.readDeck(cardLoader, file, limitList);
......@@ -425,7 +427,7 @@ public class DeckAdapater extends RecyclerView.Adapter<DeckViewHolder> implement
return list == null ? 0 : list.size();
}
private void loadData(DeckInfo deck) {
private void loadData(DeckInfo deckInfo, boolean isPack) {
mCount.clear();
mMainCount = 0;
mExtraCount = 0;
......@@ -441,7 +443,7 @@ public class DeckAdapater extends RecyclerView.Adapter<DeckViewHolder> implement
mSideSpellCount = 0;
mSideTrapCount = 0;
mItems.clear();
DeckItemUtils.makeItems(deck, this);
DeckItemUtils.makeItems(deckInfo, isPack, this);
}
public boolean isChanged() {
......@@ -478,7 +480,7 @@ public class DeckAdapater extends RecyclerView.Adapter<DeckViewHolder> implement
mItems.add(deckItem);
}
public void notifyItemChanged(Card card){
public void notifyItemChanged(Card card) {
for (int i = 0; i < getItemCount(); i++) {
DeckItem item = getItem(i);
Card c = item.getCardInfo();
......
......@@ -167,23 +167,28 @@ class DeckItemUtils {
return true;
}
public static void makeItems(DeckInfo mDeck, DeckAdapater adapater) {
if (mDeck != null) {
public static void makeItems(DeckInfo deckInfo, boolean isPack, DeckAdapater adapater) {
if (deckInfo != null) {
adapater.addItem(new DeckItem(DeckItemType.MainLabel));
List<Card> main = mDeck.getMainCards();
List<Card> main = deckInfo.getMainCards();
if (main == null) {
for (int i = 0; i < Constants.DECK_MAIN_MAX; i++) {
for (int i = 0; i < deckInfo.getMainCount(); i++) {
adapater.addItem(new DeckItem());
}
} else {
for (Card card : main) {
adapater.addItem(new DeckItem(card, DeckItemType.MainCard));
}
if (main.size() < Constants.DECK_MAIN_MAX) {
for (int i = main.size(); i < Constants.DECK_MAIN_MAX; i++) {
adapater.addItem(new DeckItem());
}
}
List<Card> extra = mDeck.getExtraCards();
}
List<Card> extra = deckInfo.getExtraCards();
List<Card> side = deckInfo.getSideCards();
if (!isPack) {
//extra
adapater.addItem(new DeckItem(DeckItemType.ExtraLabel));
if (extra == null) {
for (int i = 0; i < Constants.DECK_EXTRA_COUNT; i++) {
......@@ -197,7 +202,7 @@ class DeckItemUtils {
adapater.addItem(new DeckItem());
}
}
List<Card> side = mDeck.getSideCards();
//side
adapater.addItem(new DeckItem(DeckItemType.SideLabel));
if (side == null) {
for (int i = 0; i < Constants.DECK_SIDE_COUNT; i++) {
......@@ -213,6 +218,7 @@ class DeckItemUtils {
}
}
}
}
public static boolean isMain(int pos) {
return pos >= DeckItem.MainStart && pos <= DeckItem.MainEnd;
......
......@@ -13,6 +13,13 @@ import cn.garymb.ygomobile.lite.R;
import cn.garymb.ygomobile.loader.ImageLoader;
class DeckViewHolder extends RecyclerView.ViewHolder {
private final View view;
private final View headView;
private final View textlayout;
private final TextView labelText;
public final ImageView cardImage;
private final ImageView rightImage;
private long mCardType;
private DeckItemType mItemType;
......@@ -112,11 +119,4 @@ class DeckViewHolder extends RecyclerView.ViewHolder {
if (headView != null)
headView.setVisibility(visibility);
}
private final View view;
private final View headView;
private final View textlayout;
private final TextView labelText;
public final ImageView cardImage;
private final ImageView rightImage;
}
......@@ -392,7 +392,7 @@ public class DeckGroupView extends FrameLayout implements View.OnClickListener {
}
public enum Type {
Main, Extra, Side
Main, Extra, Side, Pack
}
private boolean mLimitChanged = false;
......
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