Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
YGOMobile
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
Commits
603cf96c
Commit
603cf96c
authored
May 23, 2019
by
feihuaduo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
分享前对卡组先进行排序
优化ydk分享url长度
parent
8ff98ee6
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
79 additions
and
17 deletions
+79
-17
mobile/src/main/java/cn/garymb/ygomobile/bean/Deck.java
mobile/src/main/java/cn/garymb/ygomobile/bean/Deck.java
+55
-15
mobile/src/main/java/cn/garymb/ygomobile/ui/cards/DeckManagerActivityImpl.java
...cn/garymb/ygomobile/ui/cards/DeckManagerActivityImpl.java
+24
-2
No files found.
mobile/src/main/java/cn/garymb/ygomobile/bean/Deck.java
View file @
603cf96c
...
@@ -4,7 +4,6 @@ import android.net.Uri;
...
@@ -4,7 +4,6 @@ import android.net.Uri;
import
android.os.Parcel
;
import
android.os.Parcel
;
import
android.os.Parcelable
;
import
android.os.Parcelable
;
import
android.text.TextUtils
;
import
android.text.TextUtils
;
import
android.util.Log
;
import
java.io.File
;
import
java.io.File
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
...
@@ -31,7 +30,7 @@ public class Deck implements Parcelable {
...
@@ -31,7 +30,7 @@ public class Deck implements Parcelable {
sideList
=
new
ArrayList
<>();
sideList
=
new
ArrayList
<>();
}
}
public
Deck
(
String
name
,
Uri
uri
)
{
public
Deck
(
String
name
,
Uri
uri
)
{
this
(
name
);
this
(
name
);
String
main
=
uri
.
getQueryParameter
(
QUERY_MAIN
);
String
main
=
uri
.
getQueryParameter
(
QUERY_MAIN
);
String
extra
=
uri
.
getQueryParameter
(
QUERY_EXTRA
);
String
extra
=
uri
.
getQueryParameter
(
QUERY_EXTRA
);
...
@@ -39,34 +38,56 @@ public class Deck implements Parcelable {
...
@@ -39,34 +38,56 @@ public class Deck implements Parcelable {
if
(!
TextUtils
.
isEmpty
(
main
))
{
if
(!
TextUtils
.
isEmpty
(
main
))
{
String
[]
mains
=
main
.
split
(
","
);
String
[]
mains
=
main
.
split
(
","
);
for
(
String
m
:
mains
)
{
for
(
String
m
:
mains
)
{
int
id
=
toId
(
m
);
int
[]
idNum
=
toIdAndNum
(
m
);
if
(
id
>
0
)
{
if
(
idNum
[
0
]
>
0
)
{
mainlist
.
add
(
id
);
for
(
int
i
=
0
;
i
<
idNum
[
1
];
i
++){
mainlist
.
add
(
idNum
[
0
]);
}
}
}
}
}
}
}
if
(!
TextUtils
.
isEmpty
(
extra
))
{
if
(!
TextUtils
.
isEmpty
(
extra
))
{
String
[]
extras
=
extra
.
split
(
","
);
String
[]
extras
=
extra
.
split
(
","
);
for
(
String
m
:
extras
)
{
for
(
String
m
:
extras
)
{
int
id
=
toId
(
m
);
int
[]
idNum
=
toIdAndNum
(
m
);
if
(
id
>
0
)
{
if
(
idNum
[
0
]
>
0
)
{
extraList
.
add
(
id
);
for
(
int
i
=
0
;
i
<
idNum
[
1
];
i
++){
extraList
.
add
(
idNum
[
0
]);
}
}
}
}
}
}
}
if
(!
TextUtils
.
isEmpty
(
side
))
{
if
(!
TextUtils
.
isEmpty
(
side
))
{
String
[]
sides
=
side
.
split
(
","
);
String
[]
sides
=
side
.
split
(
","
);
for
(
String
m
:
sides
)
{
for
(
String
m
:
sides
)
{
int
id
=
toId
(
m
);
int
[]
idNum
=
toIdAndNum
(
m
);
if
(
id
>
0
)
{
if
(
idNum
[
0
]
>
0
)
{
sideList
.
add
(
id
);
for
(
int
i
=
0
;
i
<
idNum
[
1
];
i
++){
sideList
.
add
(
idNum
[
0
]);
}
}
}
}
}
}
}
}
private
int
[]
toIdAndNum
(
String
m
)
{
int
[]
idNum
={
0
,
1
};
if
(
m
.
contains
(
"*"
)){
try
{
idNum
[
1
]=
Integer
.
parseInt
(
m
.
substring
(
m
.
length
()-
1
));
}
catch
(
Exception
e
){
}
idNum
[
0
]=
toId
(
m
.
substring
(
0
,
m
.
length
()-
2
));
}
else
{
idNum
[
0
]=
toId
(
m
);
}
return
idNum
;
}
}
public
Deck
(
Uri
uri
)
{
public
Deck
(
Uri
uri
)
{
this
(
uri
.
getQueryParameter
(
QUERY_YDK
),
uri
);
this
(
uri
.
getQueryParameter
(
QUERY_YDK
),
uri
);
}
}
public
Uri
toAppUri
()
{
public
Uri
toAppUri
()
{
...
@@ -93,14 +114,33 @@ public class Deck implements Parcelable {
...
@@ -93,14 +114,33 @@ public class Deck implements Parcelable {
private
String
toString
(
List
<
Integer
>
ids
)
{
private
String
toString
(
List
<
Integer
>
ids
)
{
StringBuilder
builder
=
new
StringBuilder
();
StringBuilder
builder
=
new
StringBuilder
();
int
i
=
0
;
for
(
int
i
=
0
;
i
<
ids
.
size
();
i
++)
{
for
(
Integer
id
:
ids
)
{
Integer
id
=
ids
.
get
(
i
);
if
(
i
>
0
)
{
if
(
i
>
0
)
{
builder
.
append
(
","
);
builder
.
append
(
","
);
}
}
if
(
id
>
0
)
{
if
(
id
>
0
)
{
builder
.
append
(
id
);
builder
.
append
(
id
);
if
(
i
!=
ids
.
size
()-
1
)
{
int
id1
=
ids
.
get
(
i
+
1
);
//同名卡张数
int
tNum
=
1
;
//如果下张是同名卡
if
(
id1
==
id
)
{
tNum
++;
i
++;
i
++;
id1
=
ids
.
get
(
i
+
2
);
//如果下下张是同名卡
if
(
id1
==
id
)
{
tNum
++;
i
++;
}
}
//如果有同名卡
if
(
tNum
>
1
)
{
builder
.
append
(
"*"
+
tNum
);
}
}
}
}
}
}
return
builder
.
toString
();
return
builder
.
toString
();
...
...
mobile/src/main/java/cn/garymb/ygomobile/ui/cards/DeckManagerActivityImpl.java
View file @
603cf96c
...
@@ -7,6 +7,7 @@ import android.graphics.Bitmap;
...
@@ -7,6 +7,7 @@ import android.graphics.Bitmap;
import
android.graphics.Color
;
import
android.graphics.Color
;
import
android.os.Build
;
import
android.os.Build
;
import
android.os.Bundle
;
import
android.os.Bundle
;
import
android.os.Handler
;
import
android.support.annotation.Nullable
;
import
android.support.annotation.Nullable
;
import
android.support.v7.widget.AppCompatSpinner
;
import
android.support.v7.widget.AppCompatSpinner
;
import
android.support.v7.widget.RecyclerView
;
import
android.support.v7.widget.RecyclerView
;
...
@@ -88,6 +89,7 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
...
@@ -88,6 +89,7 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
private
AppCompatSpinner
mLimitSpinner
;
private
AppCompatSpinner
mLimitSpinner
;
private
CardDetail
mCardDetail
;
private
CardDetail
mCardDetail
;
private
DialogPlus
mDialog
;
private
DialogPlus
mDialog
;
private
DialogPlus
builderShareLoading
;
@Override
@Override
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
...
@@ -682,8 +684,27 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
...
@@ -682,8 +684,27 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
return
files
==
null
||
files
.
size
()
==
0
?
null
:
files
.
get
(
0
);
return
files
==
null
||
files
.
size
()
==
0
?
null
:
files
.
get
(
0
);
}
}
private
void
shareDeck
()
{
private
void
shareDeck
(){
// 开启绘图缓存
builderShareLoading
=
new
DialogPlus
(
this
);
builderShareLoading
.
showProgressBar
();
builderShareLoading
.
hideTitleBar
();
builderShareLoading
.
setMessage
(
"准备分享中"
);
builderShareLoading
.
show
();
//先排序
mDeckAdapater
.
sort
();
//延时一秒,等排好序再分享
new
Handler
().
postDelayed
(
new
Runnable
()
{
@Override
public
void
run
()
{
shareDeck1
();
}
},
1000
);
}
private
void
shareDeck1
()
{
//开启绘图缓存
mRecyclerView
.
setDrawingCacheEnabled
(
true
);
mRecyclerView
.
setDrawingCacheEnabled
(
true
);
//这个方法可调可不调,因为在getDrawingCache()里会自动判断有没有缓存有没有准备好,
//这个方法可调可不调,因为在getDrawingCache()里会自动判断有没有缓存有没有准备好,
//如果没有,会自动调用buildDrawingCache()
//如果没有,会自动调用buildDrawingCache()
...
@@ -712,6 +733,7 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
...
@@ -712,6 +733,7 @@ class DeckManagerActivityImpl extends BaseCardsAcitivity implements RecyclerView
showToast
(
getString
(
R
.
string
.
deck_text_copyed
));
showToast
(
getString
(
R
.
string
.
deck_text_copyed
));
//复制完毕开启决斗助手
//复制完毕开启决斗助手
Util
.
startDuelService
(
this
);
Util
.
startDuelService
(
this
);
builderShareLoading
.
dismiss
();
// String label = TextUtils.isEmpty(deck.getName()) ? getString(R.string.share_deck) : deck.getName();
// String label = TextUtils.isEmpty(deck.getName()) ? getString(R.string.share_deck) : deck.getName();
// final String uriString = deck.toAppUri().toString();
// final String uriString = deck.toAppUri().toString();
// final String httpUri = deck.toHttpUri().toString();
// final String httpUri = deck.toHttpUri().toString();
...
...
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