Commit 6b510cf2 authored by feihuaduo's avatar feihuaduo

修复卡组码解析主卡组只有4种卡片的问题

修复移动/复制卡组文件丢失后缀名的问题
parent 8423a99e
......@@ -19,12 +19,14 @@ import android.util.Base64;
import android.util.Log;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import cn.garymb.ygomobile.Constants;
import cn.garymb.ygomobile.ui.cards.deck.DeckUtils;
import cn.garymb.ygomobile.utils.FileLogUtil;
import cn.garymb.ygomobile.utils.YGOUtil;
public class Deck implements Parcelable {
......@@ -146,15 +148,23 @@ public class Deck implements Parcelable {
int mNum = Integer.valueOf(YGOUtil.getArrayString(bits, 0, 8), 2);
int eNum = Integer.valueOf(YGOUtil.getArrayString(bits, 8, 12), 2);
int sNum = Integer.valueOf(YGOUtil.getArrayString(bits, 12, 16), 2);
try {
FileLogUtil.write("种类数量"+mNum+" "+eNum+" "+sNum+" ");
FileLogUtil.write("m:"+YGOUtil.getArrayString(bits, 0, 8));
FileLogUtil.write("s:"+YGOUtil.getArrayString(bits, 8, 12));
FileLogUtil.write("e:"+YGOUtil.getArrayString(bits, 12, 16));
} catch (IOException e) {
e.printStackTrace();
}
Log.e("Deck","种类数量"+mNum+" "+eNum+" "+sNum+" ");
Log.e("Deck","m:"+YGOUtil.getArrayString(bits, 0, 8));
Log.e("Deck","e:"+YGOUtil.getArrayString(bits, 8, 16));
Log.e("Deck","s:"+YGOUtil.getArrayString(bits, 16, 24));
Log.e("Deck","e:"+YGOUtil.getArrayString(bits, 8, 12));
Log.e("Deck","s:"+YGOUtil.getArrayString(bits, 12, 16));
for (int i = 0; i < mNum; i++) {
int cStart = 16 + (i * 29);
int cardNum = Integer.valueOf(YGOUtil.getArrayString(bits, cStart, cStart + 2), 2);
int cardId = Integer.valueOf(YGOUtil.getArrayString(bits, cStart + 2, cStart + 29), 2);
if (i<4)
for (int x = 0; x < cardNum; x++) {
mainlist.add(cardId);
}
......
......@@ -32,6 +32,9 @@ public class DeckFile extends TextSelect {
public String getName() {
return name;
}
public String getFileName(){
return new File(path).getName();
}
public void setName(String name) {
this.name = name;
......
......@@ -5,6 +5,7 @@ import android.content.Context;
import android.content.DialogInterface;
import android.text.InputType;
import android.text.TextUtils;
import android.util.Log;
import android.view.Gravity;
import android.view.KeyEvent;
import android.view.View;
......@@ -216,23 +217,19 @@ public class YGODialogUtil {
}
});
ll_move.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ll_move.setOnClickListener(v -> {
List<DeckType> otherType = getOtherTypeList();
du.dialogl(context.getString(please_select_target_category),
getStringType(otherType),
R.drawable.radius).setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
R.drawable.radius).setOnItemClickListener((parent, view, position, id) -> {
du.dis();
DeckType toType = otherType.get(position);
IOUtils.createFolder(new File(toType.getPath()));
List<DeckFile> deckFileList = deckAdp.getSelectList();
for (DeckFile deckFile : deckFileList) {
try {
FileUtils.moveFile(deckFile.getPath(), new File(toType.getPath(), deckFile.getName()).getPath());
FileUtils.moveFile(deckFile.getPath(), new File(toType.getPath(), deckFile.getFileName()).getPath());
} catch (IOException e) {
e.printStackTrace();
}
......@@ -241,28 +238,22 @@ public class YGODialogUtil {
YGOUtil.show(context.getString(R.string.done));
onDeckMenuListener.onDeckMove(deckAdp.getSelectList(), toType);
clearDeckSelect();
}
});
}
});
ll_copy.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ll_copy.setOnClickListener(v -> {
List<DeckType> otherType = getOtherTypeList();
du.dialogl(context.getString(please_select_target_category),
getStringType(otherType),
R.drawable.radius).setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
R.drawable.radius).setOnItemClickListener((parent, view, position, id) -> {
du.dis();
DeckType toType = otherType.get(position);
IOUtils.createFolder(new File(toType.getPath()));
List<DeckFile> deckFileList = deckAdp.getSelectList();
for (DeckFile deckFile : deckFileList) {
try {
FileUtils.copyFile(deckFile.getPath(), new File(toType.getPath(), deckFile.getName()).getPath());
FileUtils.copyFile(deckFile.getPath(), new File(toType.getPath(), deckFile.getFileName()).getPath());
} catch (IOException e) {
e.printStackTrace();
}
......@@ -270,9 +261,7 @@ public class YGODialogUtil {
YGOUtil.show(context.getString(R.string.done));
onDeckMenuListener.onDeckCopy(deckAdp.getSelectList(), toType);
clearDeckSelect();
}
});
}
});
ll_del.setOnClickListener(new View.OnClickListener() {
......
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