Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
YGOMobile-Cn-Ko-En
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fallenstardust
YGOMobile-Cn-Ko-En
Commits
2d63379e
Commit
2d63379e
authored
Mar 12, 2019
by
k
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
非deck的卡组
parent
18dcc571
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
74 additions
and
40 deletions
+74
-40
mobile/src/main/java/cn/garymb/ygomobile/bean/DeckInfo.java
mobile/src/main/java/cn/garymb/ygomobile/bean/DeckInfo.java
+3
-0
mobile/src/main/java/cn/garymb/ygomobile/loader/DeckLoader.java
.../src/main/java/cn/garymb/ygomobile/loader/DeckLoader.java
+4
-1
mobile/src/main/java/cn/garymb/ygomobile/ui/cards/DeckManagerActivityImpl.java
...cn/garymb/ygomobile/ui/cards/DeckManagerActivityImpl.java
+59
-39
mobile/src/main/res/menu/deck_menu.xml
mobile/src/main/res/menu/deck_menu.xml
+5
-0
mobile/src/main/res/values-ko/strings.xml
mobile/src/main/res/values-ko/strings.xml
+1
-0
mobile/src/main/res/values-zh/strings.xml
mobile/src/main/res/values-zh/strings.xml
+1
-0
mobile/src/main/res/values/strings.xml
mobile/src/main/res/values/strings.xml
+1
-0
No files found.
mobile/src/main/java/cn/garymb/ygomobile/bean/DeckInfo.java
View file @
2d63379e
package
cn.garymb.ygomobile.bean
;
import
java.io.File
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.Collections
;
...
...
@@ -23,6 +24,8 @@ public class DeckInfo {
private
final
List
<
Card
>
extraCards
;
private
final
List
<
Card
>
sideCards
;
public
File
source
;
private
int
mainCount
,
extraCount
,
sideCount
;
public
DeckInfo
()
{
...
...
mobile/src/main/java/cn/garymb/ygomobile/loader/DeckLoader.java
View file @
2d63379e
...
...
@@ -26,6 +26,9 @@ public class DeckLoader {
try
{
inputStream
=
new
FileInputStream
(
file
);
deckInfo
=
readDeck
(
cardLoader
,
inputStream
,
limitList
);
if
(
deckInfo
!=
null
){
deckInfo
.
source
=
file
;
}
}
catch
(
Exception
e
)
{
Log
.
e
(
"deckreader"
,
"read 1"
,
e
);
}
finally
{
...
...
@@ -34,7 +37,7 @@ public class DeckLoader {
return
deckInfo
;
}
p
ublic
static
DeckInfo
readDeck
(
CardLoader
cardLoader
,
InputStream
inputStream
,
LimitList
limitList
)
{
p
rivate
static
DeckInfo
readDeck
(
CardLoader
cardLoader
,
InputStream
inputStream
,
LimitList
limitList
)
{
Deck
deck
=
new
Deck
();
SparseArray
<
Integer
>
mIds
=
new
SparseArray
<>();
InputStreamReader
in
=
null
;
...
...
mobile/src/main/java/cn/garymb/ygomobile/ui/cards/DeckManagerActivityImpl.java
View file @
2d63379e
...
...
@@ -42,6 +42,7 @@ import org.greenrobot.eventbus.ThreadMode;
import
java.io.File
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.Locale
;
...
...
@@ -79,6 +80,7 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
private
AppsSettings
mSettings
=
AppsSettings
.
get
();
private
LimitList
mLimitList
;
private
File
mYdkFile
;
private
File
mPreLoadFile
;
private
DeckItemTouchHelper
mDeckItemTouchHelper
;
private
AppCompatSpinner
mDeckSpinner
;
private
SimpleSpinnerAdapter
mSimpleSpinnerAdapter
;
...
...
@@ -133,27 +135,33 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
});
//
DialogPlus
dlg
=
DialogPlus
.
show
(
this
,
null
,
getString
(
R
.
string
.
loading
));
final
File
_file
;
if
(!
TextUtils
.
isEmpty
(
mPreLoad
))
{
mPreLoadFile
=
new
File
(
mPreLoad
);
_file
=
mPreLoadFile
;
mPreLoad
=
null
;
}
else
{
_file
=
new
File
(
mSettings
.
getResourcePath
(),
Constants
.
CORE_DECK_PATH
+
"/"
+
mSettings
.
getLastDeck
()
+
Constants
.
YDK_FILE_EX
);
}
VUiKit
.
defer
().
when
(()
->
{
DataManager
.
get
().
load
(
false
);
if
(
mLimitManager
.
getCount
()
>
0
)
{
mCardLoader
.
setLimitList
(
mLimitManager
.
getTopLimit
());
}
File
file
=
new
File
(
mSettings
.
getResourcePath
(),
Constants
.
CORE_DECK_PATH
+
"/"
+
mSettings
.
getLastDeck
()
+
Constants
.
YDK_FILE_EX
);
if
(!
TextUtils
.
isEmpty
(
mPreLoad
))
{
file
=
new
File
(
mPreLoad
);
mPreLoad
=
null
;
}
File
file
=
_file
;
if
(!
file
.
exists
())
{
//当默认卡组不存在的时候
File
[]
files
=
getYdkFiles
();
if
(
files
!=
null
&&
files
.
length
>
0
)
{
file
=
files
[
0
]
;
List
<
File
>
files
=
getYdkFiles
();
if
(
files
!=
null
&&
files
.
size
()
>
0
)
{
file
=
files
.
get
(
0
)
;
}
}
//EXTRA_DECK
if
(
file
==
null
)
{
return
new
DeckInfo
();
}
Log
.
i
(
"kk"
,
"load ydk "
+
file
);
mYdkFile
=
file
;
if
(
mCardLoader
.
isOpen
()
&&
mYdkFile
.
exists
())
{
return
mDeckAdapater
.
read
(
mCardLoader
,
mYdkFile
,
mLimitList
);
...
...
@@ -166,7 +174,7 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
mCardSelector
.
initItems
();
mLimitList
=
mCardLoader
.
getLimitList
();
isLoad
=
true
;
setCurYdkFile
(
mYdkFil
e
,
false
);
setCurYdkFile
(
rs
.
sourc
e
,
false
);
initLimitListSpinners
(
mLimitSpinner
);
initDecksListSpinners
(
mDeckSpinner
);
mDeckAdapater
.
setDeck
(
rs
);
...
...
@@ -181,18 +189,6 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
super
.
onDestroy
();
}
@Override
protected
void
onNewIntent
(
Intent
intent
)
{
super
.
onNewIntent
(
intent
);
if
(
getIntent
().
hasExtra
(
Intent
.
EXTRA_TEXT
))
{
String
path
=
getIntent
().
getStringExtra
(
Intent
.
EXTRA_TEXT
);
if
(!
TextUtils
.
isEmpty
(
path
))
{
mPreLoad
=
path
;
loadDeck
(
new
File
(
path
));
}
}
}
@Override
public
void
onLimitListChanged
(
LimitList
limitList
)
{
...
...
@@ -604,8 +600,19 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
save
();
}
break
;
// case R.id.action_save_as:
// if (mYdkFile == null) {
// inputDeckName(null);
// } else {
// inputDeckName(mYdkFile.getName());
// }
// break;
case
R
.
id
.
action_rename
:
if
(
mYdkFile
==
null
)
{
inputDeckName
(
null
);
}
else
{
inputDeckName
(
mYdkFile
.
getName
());
}
break
;
case
R
.
id
.
action_deck_new
:
{
final
String
old
=
mYdkFile
==
null
?
null
:
mYdkFile
.
getAbsolutePath
();
...
...
@@ -684,7 +691,7 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
mRecyclerView
.
buildDrawingCache
();
//获取绘图缓存 这里直接创建了一个新的bitmap
//因为我们在最后需要释放缓存资源,会释放掉缓存中创建的bitmap对象
Bitmap
bitmap
=
BitmapUtil
.
drawBg4Bitmap
(
Color
.
parseColor
(
"#e6f3fd"
),
Bitmap
.
createBitmap
(
mRecyclerView
.
getDrawingCache
(),
0
,
0
,
mRecyclerView
.
getMeasuredWidth
(),
Bitmap
bitmap
=
BitmapUtil
.
drawBg4Bitmap
(
Color
.
parseColor
(
"#e6f3fd"
),
Bitmap
.
createBitmap
(
mRecyclerView
.
getDrawingCache
(),
0
,
0
,
mRecyclerView
.
getMeasuredWidth
(),
mRecyclerView
.
getMeasuredHeight
()));
//清理绘图缓存,释放资源
...
...
@@ -692,14 +699,14 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
// shotRecyclerView(mRecyclerView)
Deck
deck
=
mDeckAdapater
.
toDeck
(
mYdkFile
);
String
deckName
=
deck
.
getName
();
int
end
=
deckName
.
lastIndexOf
(
"."
);
if
(
end
!=-
1
)
{
deckName
=
deckName
.
substring
(
0
,
end
);
String
deckName
=
deck
.
getName
();
int
end
=
deckName
.
lastIndexOf
(
"."
);
if
(
end
!=
-
1
)
{
deckName
=
deckName
.
substring
(
0
,
end
);
}
String
savePath
=
new
File
(
AppsSettings
.
get
().
getDeckSharePath
(),
deckName
+
".jpg"
).
getAbsolutePath
();
BitmapUtil
.
saveBitmap
(
bitmap
,
savePath
,
50
);
ShareUtil
.
shareImage
(
DeckManagerActivityImpl
.
this
,
"卡组分享"
,
savePath
,
null
);
String
savePath
=
new
File
(
AppsSettings
.
get
().
getDeckSharePath
(),
deckName
+
".jpg"
).
getAbsolutePath
();
BitmapUtil
.
saveBitmap
(
bitmap
,
savePath
,
50
);
ShareUtil
.
shareImage
(
DeckManagerActivityImpl
.
this
,
"卡组分享"
,
savePath
,
null
);
// String label = TextUtils.isEmpty(deck.getName()) ? getString(R.string.share_deck) : deck.getName();
...
...
@@ -737,16 +744,32 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
// return null;
// }
private
File
[]
getYdkFiles
()
{
private
List
<
File
>
getYdkFiles
()
{
File
dir
=
new
File
(
mSettings
.
getResourcePath
(),
Constants
.
CORE_DECK_PATH
);
File
[]
files
=
dir
.
listFiles
((
file
,
s
)
->
{
return
s
.
toLowerCase
(
Locale
.
US
).
endsWith
(
Constants
.
YDK_FILE_EX
);
});
return
files
;
if
(
files
!=
null
)
{
List
<
File
>
list
=
new
ArrayList
<>(
Arrays
.
asList
(
files
));
if
(
mPreLoadFile
!=
null
)
{
boolean
hasCur
=
false
;
for
(
File
f
:
list
)
{
if
(
TextUtils
.
equals
(
f
.
getAbsolutePath
(),
mPreLoadFile
.
getAbsolutePath
()))
{
hasCur
=
true
;
break
;
}
}
if
(!
hasCur
)
{
list
.
add
(
mPreLoadFile
);
}
}
return
list
;
}
return
null
;
}
private
void
initDecksListSpinners
(
Spinner
spinner
)
{
File
[]
files
=
getYdkFiles
();
List
<
File
>
files
=
getYdkFiles
();
List
<
SimpleSpinnerItem
>
items
=
new
ArrayList
<>();
String
name
=
mYdkFile
!=
null
?
mYdkFile
.
getName
()
:
null
;
int
index
=
-
1
;
...
...
@@ -850,9 +873,6 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
editText
.
setGravity
(
Gravity
.
TOP
|
Gravity
.
LEFT
);
editText
.
setInputType
(
InputType
.
TYPE_TEXT_FLAG_NO_SUGGESTIONS
);
editText
.
setSingleLine
();
if
(
mYdkFile
!=
null
)
{
editText
.
setText
(
mYdkFile
.
getName
());
}
builder
.
setContentView
(
editText
);
builder
.
setOnCloseLinster
((
dlg
)
->
{
dlg
.
dismiss
();
...
...
@@ -872,7 +892,7 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
showToast
(
R
.
string
.
file_exist
,
Toast
.
LENGTH_SHORT
);
return
;
}
if
(
mYdkFile
!=
null
&&
mYdkFile
.
exists
())
{
if
(
mYdkFile
!=
null
&&
mYdkFile
.
exists
())
{
if
(
mYdkFile
.
renameTo
(
ydk
))
{
mYdkFile
=
ydk
;
initDecksListSpinners
(
mDeckSpinner
);
...
...
@@ -909,7 +929,7 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
private
void
initBoomMenuButton
(
BoomMenuButton
menu
)
{
final
SparseArray
<
Integer
>
mMenuIds
=
new
SparseArray
<>();
// addMenuButton(mMenuIds, menu, R.id.action_card_search, R.string.deck_list, R.drawable.listicon);
addMenuButton
(
mMenuIds
,
menu
,
R
.
id
.
action_share_deck
,
R
.
string
.
share_deck
,
R
.
drawable
.
listicon
);
addMenuButton
(
mMenuIds
,
menu
,
R
.
id
.
action_share_deck
,
R
.
string
.
share_deck
,
R
.
drawable
.
listicon
);
addMenuButton
(
mMenuIds
,
menu
,
R
.
id
.
action_save
,
R
.
string
.
save_deck
,
R
.
drawable
.
save
);
addMenuButton
(
mMenuIds
,
menu
,
R
.
id
.
action_clear_deck
,
R
.
string
.
clear_deck
,
R
.
drawable
.
clear_deck
);
...
...
mobile/src/main/res/menu/deck_menu.xml
View file @
2d63379e
...
...
@@ -38,6 +38,11 @@
android:id=
"@+id/action_save"
android:icon=
"@drawable/ic_mode_save_white"
android:title=
"@string/save_deck"
/>
<!-- <item
android:id="@+id/action_save_as"
android:icon="@drawable/ic_mode_save_white"
android:title="@string/save_as_deck"/>-->
<!--<item
android:id="@+id/action_share_deck"
android:icon="@drawable/ic_refresh"
...
...
mobile/src/main/res/values-ko/strings.xml
View file @
2d63379e
...
...
@@ -132,6 +132,7 @@
<string
name=
"rename_deck"
>
이름변경
</string>
<string
name=
"delete_deck"
>
삭제
</string>
<string
name=
"save_deck"
>
덱저장
</string>
<string
name=
"save_as_deck"
>
Deck save as
</string>
<string
name=
"deck_list"
>
덱 리스트
</string>
<string
name=
"loading"
>
로딩중..."
</string>
<string
name=
"tip"
>
정보
</string>
...
...
mobile/src/main/res/values-zh/strings.xml
View file @
2d63379e
...
...
@@ -132,6 +132,7 @@
<string
name=
"rename_deck"
>
重命名
</string>
<string
name=
"delete_deck"
>
删除
</string>
<string
name=
"save_deck"
>
保存
</string>
<string
name=
"save_as_deck"
>
另存为
</string>
<string
name=
"deck_list"
>
卡组列表
</string>
<string
name=
"loading"
>
加载中..."
</string>
<string
name=
"tip"
>
提示
</string>
...
...
mobile/src/main/res/values/strings.xml
View file @
2d63379e
...
...
@@ -124,6 +124,7 @@
<string
name=
"rename_deck"
>
Rename
</string>
<string
name=
"delete_deck"
>
Delete
</string>
<string
name=
"save_deck"
>
Save Deck
</string>
<string
name=
"save_as_deck"
>
Deck save as
</string>
<string
name=
"deck_list"
>
Deck List
</string>
<string
name=
"card_add_main"
>
+Main Deck
</string>
<string
name=
"card_add_side"
>
+Side Deck
</string>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment