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
a28e6bb9
Commit
a28e6bb9
authored
May 28, 2022
by
fallenstardust
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
填入卡图、卡组统计缩略信息
parent
fc1d78dc
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
42 additions
and
22 deletions
+42
-22
mobile/src/main/java/cn/garymb/ygomobile/ui/adapters/DeckListAdapter.java
...java/cn/garymb/ygomobile/ui/adapters/DeckListAdapter.java
+34
-10
mobile/src/main/java/cn/garymb/ygomobile/ui/adapters/ServerListAdapter.java
...va/cn/garymb/ygomobile/ui/adapters/ServerListAdapter.java
+5
-10
mobile/src/main/java/cn/garymb/ygomobile/utils/YGODialogUtil.java
...rc/main/java/cn/garymb/ygomobile/utils/YGODialogUtil.java
+1
-1
mobile/src/main/res/layout/item_deck_list_swipe.xml
mobile/src/main/res/layout/item_deck_list_swipe.xml
+2
-1
No files found.
mobile/src/main/java/cn/garymb/ygomobile/ui/adapters/DeckListAdapter.java
View file @
a28e6bb9
package
cn.garymb.ygomobile.ui.adapters
;
import
android.annotation.SuppressLint
;
import
android.content.Context
;
import
android.graphics.Color
;
import
android.util.Log
;
import
android.view.View
;
import
android.widget.ImageView
;
import
android.widget.TextView
;
...
...
@@ -13,11 +15,16 @@ import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import
java.util.ArrayList
;
import
java.util.List
;
import
cn.garymb.ygomobile.bean.Deck
;
import
cn.garymb.ygomobile.bean.DeckInfo
;
import
cn.garymb.ygomobile.bean.TextSelect
;
import
cn.garymb.ygomobile.bean.events.DeckFile
;
import
cn.garymb.ygomobile.lite.R
;
import
cn.garymb.ygomobile.loader.CardLoader
;
import
cn.garymb.ygomobile.loader.DeckLoader
;
import
cn.garymb.ygomobile.loader.ImageLoader
;
import
cn.garymb.ygomobile.ui.cards.deck.DeckAdapater
;
import
cn.garymb.ygomobile.ui.cards.deck.DeckItem
;
import
cn.garymb.ygomobile.ui.cards.deck.ImageTop
;
import
cn.garymb.ygomobile.utils.YGOUtil
;
import
ocgcore.data.LimitList
;
...
...
@@ -26,7 +33,8 @@ public class DeckListAdapter<T extends TextSelect> extends BaseQuickAdapter<T, D
private
ImageLoader
imageLoader
;
private
ImageTop
mImageTop
;
private
LimitList
mLimitList
;
private
boolean
mEnableSwipe
=
false
;
private
CardLoader
mCardLoader
;
private
DeckLoader
mDeckLoader
;
private
DeckInfo
deckInfo
;
private
DeckFile
deckFile
;
private
OnItemSelectListener
onItemSelectListener
;
...
...
@@ -35,7 +43,7 @@ public class DeckListAdapter<T extends TextSelect> extends BaseQuickAdapter<T, D
private
boolean
isManySelect
;
private
List
<
T
>
selectList
;
public
DeckListAdapter
(
List
<
T
>
data
,
int
select
)
{
public
DeckListAdapter
(
Context
context
,
List
<
T
>
data
,
int
select
)
{
super
(
R
.
layout
.
item_deck_list_swipe
,
data
);
this
.
selectPosition
=
select
;
if
(
select
>=
0
)
...
...
@@ -55,29 +63,43 @@ public class DeckListAdapter<T extends TextSelect> extends BaseQuickAdapter<T, D
onItemSelectListener
.
onItemSelect
(
position
,
data
.
get
(
position
).
getObject
());
}
});
mCardLoader
=
new
CardLoader
(
context
);
imageLoader
=
new
ImageLoader
();
mLimitList
=
new
LimitList
();
mDeckLoader
=
new
DeckLoader
();
deckInfo
=
new
DeckInfo
();
}
@SuppressLint
(
"ResourceType"
)
@Override
protected
void
convert
(
DeckViewHolder
holder
,
T
item
)
{
int
position
=
holder
.
getAdapterPosition
();
//item是deckFile类型
this
.
deckFile
=
(
DeckFile
)
item
;
this
.
deckInfo
=
mDeckLoader
.
readDeck
(
mCardLoader
,
deckFile
.
getPathFile
(),
mLimitList
);
Log
.
i
(
"看看3.9.7"
,
deckInfo
+
""
);
//填入内容
imageLoader
.
bindImage
(
holder
.
cardImage
,
deckFile
.
getFirstCode
(),
ImageLoader
.
Type
.
small
);
holder
.
deckName
.
setText
(
item
.
getName
());
holder
.
main
.
setText
(
String
.
valueOf
(
deckInfo
.
getMainCount
()));
holder
.
extra
.
setText
(
String
.
valueOf
(
deckInfo
.
getExtraCount
()));
holder
.
side
.
setText
(
String
.
valueOf
(
deckInfo
.
getSideCount
()));
//多选
if
(
isManySelect
)
{
if
(
selectList
.
contains
(
item
))
holder
.
deckName
.
setBackgroundColor
(
YGOUtil
.
c
(
R
.
color
.
colorMain
));
holder
.
item_deck_list
.
setBackgroundColor
(
YGOUtil
.
c
(
R
.
color
.
colorMain
));
else
holder
.
deckName
.
setBackgroundResource
(
Color
.
TRANSPARENT
);
holder
.
item_deck_list
.
setBackgroundResource
(
Color
.
TRANSPARENT
);
}
else
if
(
isSelect
)
{
if
(
position
==
selectPosition
)
{
holder
.
deckName
.
setBackgroundColor
(
YGOUtil
.
c
(
R
.
color
.
colorMain
));
holder
.
item_deck_list
.
setBackgroundColor
(
YGOUtil
.
c
(
R
.
color
.
colorMain
));
}
else
{
holder
.
deckName
.
setBackgroundResource
(
Color
.
TRANSPARENT
);
holder
.
item_deck_list
.
setBackgroundResource
(
Color
.
TRANSPARENT
);
}
}
else
{
holder
.
deckName
.
setBackgroundResource
(
Color
.
TRANSPARENT
);
holder
.
item_deck_list
.
setBackgroundResource
(
Color
.
TRANSPARENT
);
}
imageLoader
.
bindImage
(
cardImage
,
item
.
getFirstCode
(),
ImageLoader
.
Type
.
small
);
}
public
void
setSelectPosition
(
int
selectPosition
)
{
...
...
@@ -130,15 +152,17 @@ class DeckViewHolder extends com.chad.library.adapter.base.viewholder.BaseViewHo
TextView
main
;
TextView
extra
;
TextView
side
;
View
item_deck_list
;
public
DeckViewHolder
(
View
view
)
{
super
(
view
);
view
.
setTag
(
view
.
getId
(),
this
);
item_deck_list
=
findView
(
R
.
id
.
item_deck_list
);
cardImage
=
findView
(
R
.
id
.
card_image
);
deckName
=
findView
(
R
.
id
.
deck_name
);
main
=
findView
(
R
.
id
.
count_main
);
extra
=
findView
(
R
.
id
.
count_ex
);
side
=
findView
(
R
.
id
.
count_
ex
);
side
=
findView
(
R
.
id
.
count_
side
);
prerelease_star
=
findView
(
R
.
id
.
prerelease_star
);
}
}
\ No newline at end of file
mobile/src/main/java/cn/garymb/ygomobile/ui/adapters/ServerListAdapter.java
View file @
a28e6bb9
...
...
@@ -5,13 +5,9 @@ import android.content.Intent;
import
android.net.Uri
;
import
android.os.Build
;
import
android.provider.Settings
;
import
android.util.Log
;
import
android.view.View
;
import
androidx.annotation.NonNull
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.chad.library.adapter.base.listener.OnItemChildClickListener
;
import
com.chad.library.adapter.base.viewholder.BaseViewHolder
;
import
com.tubb.smrv.SwipeHorizontalMenuLayout
;
...
...
@@ -20,7 +16,6 @@ import org.greenrobot.eventbus.EventBus;
import
cn.garymb.ygomobile.bean.ServerInfo
;
import
cn.garymb.ygomobile.bean.events.ServerInfoEvent
;
import
cn.garymb.ygomobile.lite.R
;
import
cn.garymb.ygomobile.ui.home.ServerInfoViewHolder
;
import
cn.garymb.ygomobile.ui.plus.DialogPlus
;
public
class
ServerListAdapter
extends
BaseRecyclerAdapterPlus
<
ServerInfo
,
BaseViewHolder
>
{
...
...
@@ -65,28 +60,28 @@ public class ServerListAdapter extends BaseRecyclerAdapterPlus<ServerInfo, BaseV
// }
public
void
bindMenu
()
{
addChildClickViewIds
(
R
.
id
.
smContentView
,
R
.
id
.
btn_edit_delete
,
R
.
id
.
btn_delete
,
R
.
id
.
iv_fond
);
addChildClickViewIds
(
R
.
id
.
smContentView
,
R
.
id
.
btn_edit_delete
,
R
.
id
.
btn_delete
,
R
.
id
.
iv_fond
);
setOnItemChildClickListener
((
adapter
,
view
,
position
)
->
{
switch
(
view
.
getId
()){
switch
(
view
.
getId
())
{
case
R
.
id
.
smContentView
:
ServerInfoEvent
event
=
new
ServerInfoEvent
(
position
,
false
);
event
.
join
=
true
;
EventBus
.
getDefault
().
post
(
event
);
SwipeHorizontalMenuLayout
menuLayout
=
(
SwipeHorizontalMenuLayout
)
adapter
.
getViewByPosition
(
position
,
R
.
id
.
swipe_layout
);
SwipeHorizontalMenuLayout
menuLayout
=
(
SwipeHorizontalMenuLayout
)
adapter
.
getViewByPosition
(
position
,
R
.
id
.
swipe_layout
);
if
(
menuLayout
.
isMenuOpen
())
{
menuLayout
.
smoothCloseMenu
();
}
break
;
case
R
.
id
.
btn_edit_delete
:
EventBus
.
getDefault
().
post
(
new
ServerInfoEvent
(
position
,
false
));
SwipeHorizontalMenuLayout
menuLayout1
=
(
SwipeHorizontalMenuLayout
)
adapter
.
getViewByPosition
(
position
,
R
.
id
.
swipe_layout
);
SwipeHorizontalMenuLayout
menuLayout1
=
(
SwipeHorizontalMenuLayout
)
adapter
.
getViewByPosition
(
position
,
R
.
id
.
swipe_layout
);
if
(
menuLayout1
.
isMenuOpen
())
{
menuLayout1
.
smoothCloseMenu
();
}
break
;
case
R
.
id
.
btn_delete
:
EventBus
.
getDefault
().
post
(
new
ServerInfoEvent
(
position
,
true
));
SwipeHorizontalMenuLayout
menuLayout2
=
(
SwipeHorizontalMenuLayout
)
adapter
.
getViewByPosition
(
position
,
R
.
id
.
swipe_layout
);
SwipeHorizontalMenuLayout
menuLayout2
=
(
SwipeHorizontalMenuLayout
)
adapter
.
getViewByPosition
(
position
,
R
.
id
.
swipe_layout
);
if
(
menuLayout2
.
isMenuOpen
())
{
menuLayout2
.
smoothCloseMenu
();
...
...
mobile/src/main/java/cn/garymb/ygomobile/utils/YGODialogUtil.java
View file @
a28e6bb9
...
...
@@ -157,7 +157,7 @@ public class YGODialogUtil {
}
}
typeAdp
=
new
TextSelectAdapter
<>(
typeList
,
typeSelectPosition
);
deckAdp
=
new
DeckListAdapter
<>(
deckList
,
deckSelectPosition
);
deckAdp
=
new
DeckListAdapter
<>(
context
,
deckList
,
deckSelectPosition
);
rv_type
.
setAdapter
(
typeAdp
);
rv_deck
.
setAdapter
(
deckAdp
);
typeAdp
.
setOnItemSelectListener
(
new
TextSelectAdapter
.
OnItemSelectListener
<
DeckType
>()
{
...
...
mobile/src/main/res/layout/item_deck_list_swipe.xml
View file @
a28e6bb9
...
...
@@ -3,7 +3,8 @@
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
android:layout_height=
"wrap_content"
android:id=
"@+id/item_deck_list"
>
<RelativeLayout
...
...
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