Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
N
NewParkAPP
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
YONG-LIN SU
NewParkAPP
Commits
b5ea1753
Commit
b5ea1753
authored
Aug 22, 2022
by
YONG-LIN SU
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增巡場模式點選案件跳轉
parent
e2b59b69
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
35 additions
and
11 deletions
+35
-11
deploymentTargetDropDown.xml
.idea/deploymentTargetDropDown.xml
+1
-1
ReNewListAdapter.java
...ava/ecom/android/newparkapp/adapter/ReNewListAdapter.java
+6
-4
ReNewNestedAdapter.java
...a/ecom/android/newparkapp/adapter/ReNewNestedAdapter.java
+11
-3
T02StartActivity.java
...n/java/ecom/android/newparkapp/view/T02StartActivity.java
+3
-2
T04RenewListActivity.java
...va/ecom/android/newparkapp/view/T04RenewListActivity.java
+14
-1
No files found.
.idea/deploymentTargetDropDown.xml
View file @
b5ea1753
...
...
@@ -12,6 +12,6 @@
</deviceKey>
</Target>
</runningDeviceTargetSelectedWithDropDown>
<timeTargetWasSelectedWithDropDown
value=
"2022-08-22T0
3:51:15.557672
Z"
/>
<timeTargetWasSelectedWithDropDown
value=
"2022-08-22T0
9:24:14.288273800
Z"
/>
</component>
</project>
\ No newline at end of file
app/src/main/java/ecom/android/newparkapp/adapter/ReNewListAdapter.java
View file @
b5ea1753
...
...
@@ -28,11 +28,13 @@ public class ReNewListAdapter extends RecyclerView.Adapter<ReNewListAdapter.ReNe
private
Map
<
String
,
List
<
Case
>>
caseMap
;
private
List
<
String
>
keys
=
new
ArrayList
<>();
private
LiveData
<
Location
>
currentLocation
;
private
ReNewNestedAdapter
.
OnItemClickListener
onItemClickListener
;
public
ReNewListAdapter
(
Map
<
String
,
List
<
Case
>>
caseMap
,
LiveData
<
Location
>
location
){
public
ReNewListAdapter
(
Map
<
String
,
List
<
Case
>>
caseMap
,
LiveData
<
Location
>
location
,
ReNewNestedAdapter
.
OnItemClickListener
onItemClickListener
){
this
.
caseMap
=
caseMap
;
this
.
keys
=
new
ArrayList
<>(
caseMap
.
keySet
());
this
.
currentLocation
=
location
;
this
.
onItemClickListener
=
onItemClickListener
;
}
...
...
@@ -47,7 +49,7 @@ public class ReNewListAdapter extends RecyclerView.Adapter<ReNewListAdapter.ReNe
public
void
onBindViewHolder
(
@NonNull
ReNewListViewHolder
holder
,
int
position
)
{
String
key
=
keys
.
get
(
position
);
if
(
caseMap
.
containsKey
(
key
)){
holder
.
setBinding
(
key
,
caseMap
.
get
(
key
),
recycledViewPool
);
holder
.
setBinding
(
key
,
caseMap
.
get
(
key
),
recycledViewPool
,
onItemClickListener
);
}
}
...
...
@@ -79,9 +81,9 @@ public class ReNewListAdapter extends RecyclerView.Adapter<ReNewListAdapter.ReNe
});
}
void
setBinding
(
String
road
,
List
<
Case
>
cases
,
RecyclerView
.
RecycledViewPool
recycledViewPool
){
void
setBinding
(
String
road
,
List
<
Case
>
cases
,
RecyclerView
.
RecycledViewPool
recycledViewPool
,
ReNewNestedAdapter
.
OnItemClickListener
onItemClickListener
){
this
.
caseList
=
cases
;
ReNewNestedAdapter
reNewNestedAdapter
=
new
ReNewNestedAdapter
();
ReNewNestedAdapter
reNewNestedAdapter
=
new
ReNewNestedAdapter
(
onItemClickListener
);
reNewNestedAdapter
.
submitList
(
caseList
);
dataBinding
.
renewListRecyclerView
.
setAdapter
(
reNewNestedAdapter
);
dataBinding
.
renewListRecyclerView
.
setRecycledViewPool
(
recycledViewPool
);
...
...
app/src/main/java/ecom/android/newparkapp/adapter/ReNewNestedAdapter.java
View file @
b5ea1753
...
...
@@ -14,8 +14,10 @@ import ecom.android.newparkapp.databinding.RecyclerViewRenewItemBinding;
import
ecom.android.newparkapp.entity.Case
;
public
class
ReNewNestedAdapter
extends
ListAdapter
<
Case
,
ReNewNestedAdapter
.
ReNewNestedViewHolder
>
{
public
ReNewNestedAdapter
(){
private
OnItemClickListener
onItemClickListener
;
public
ReNewNestedAdapter
(
OnItemClickListener
onItemClickListener
){
super
(
caseItemCallback
);
this
.
onItemClickListener
=
onItemClickListener
;
}
@NonNull
...
...
@@ -27,7 +29,7 @@ public class ReNewNestedAdapter extends ListAdapter<Case, ReNewNestedAdapter.ReN
@Override
public
void
onBindViewHolder
(
@NonNull
ReNewNestedViewHolder
holder
,
int
position
)
{
holder
.
setBinding
(
getItem
(
position
));
holder
.
setBinding
(
getItem
(
position
)
,
onItemClickListener
);
}
public
static
final
DiffUtil
.
ItemCallback
<
Case
>
caseItemCallback
=
new
DiffUtil
.
ItemCallback
<
Case
>()
{
...
...
@@ -49,7 +51,7 @@ public class ReNewNestedAdapter extends ListAdapter<Case, ReNewNestedAdapter.ReN
this
.
dataBinding
=
dataBinding
;
}
void
setBinding
(
Case
thisCase
){
void
setBinding
(
Case
thisCase
,
OnItemClickListener
onItemClickListener
){
int
nextAddMinsAway
=
thisCase
.
getNextAddMinsAway
();
int
parkPeriodColor
=
Color
.
BLACK
;
if
(
nextAddMinsAway
<
10
)
...
...
@@ -60,7 +62,13 @@ public class ReNewNestedAdapter extends ListAdapter<Case, ReNewNestedAdapter.ReN
dataBinding
.
parkPeriod
.
setTextColor
(
parkPeriodColor
);
dataBinding
.
renewItemIcon
.
setBackgroundResource
(
R
.
drawable
.
icon
);
dataBinding
.
getRoot
().
setOnClickListener
(
view
->
onItemClickListener
.
onSpaceCaseClick
(
thisCase
.
billingNumber2
));
}
}
public
interface
OnItemClickListener
{
void
onSpaceCaseClick
(
String
billingNumber2
);
}
}
app/src/main/java/ecom/android/newparkapp/view/T02StartActivity.java
View file @
b5ea1753
...
...
@@ -295,8 +295,9 @@ public class T02StartActivity extends AppCompatActivity {
});
gpsSearchModeActivityResultLauncher
=
registerForActivityResult
(
new
ActivityResultContracts
.
StartActivityForResult
(),
result
->
{
if
(
result
.
getResultCode
()
==
RESULT_OK
){
if
(
result
.
getResultCode
()
==
RESULT_OK
&&
result
.
getData
()
!=
null
){
String
billingNumber2
=
result
.
getData
().
getStringExtra
(
"BillingNumber2"
);
t02StartViewModel
.
go2Page
(
billingNumber2
);
}
});
}
...
...
app/src/main/java/ecom/android/newparkapp/view/T04RenewListActivity.java
View file @
b5ea1753
package
ecom
.
android
.
newparkapp
.
view
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
android.view.MenuItem
;
...
...
@@ -20,6 +21,7 @@ import java.util.stream.Collectors;
import
ecom.android.newparkapp.R
;
import
ecom.android.newparkapp.adapter.ReNewListAdapter
;
import
ecom.android.newparkapp.adapter.ReNewNestedAdapter
;
import
ecom.android.newparkapp.databinding.ActivityT04RenewListBinding
;
import
ecom.android.newparkapp.entity.Case
;
import
ecom.android.newparkapp.entity.RenewInfoData
;
...
...
@@ -39,6 +41,7 @@ public class T04RenewListActivity extends AppCompatActivity {
private
ReNewListAdapter
reNewListAdapter
;
private
Map
<
String
,
List
<
Case
>>
pureCasesGroupByRoad
=
new
HashMap
<>();
private
FusedGpsViewModel
fusedGpsViewModel
;
private
ReNewNestedItemOnClick
reNewNestedItemOnClick
=
new
ReNewNestedItemOnClick
();
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
...
...
@@ -62,7 +65,7 @@ public class T04RenewListActivity extends AppCompatActivity {
dataBinding
.
recyclelist
.
setLayoutManager
(
new
LinearLayoutManager
(
this
));
dataBinding
.
recyclelist
.
addItemDecoration
(
new
DividerItemDecoration
(
this
,
DividerItemDecoration
.
VERTICAL
));
reNewListAdapter
=
new
ReNewListAdapter
(
pureCasesGroupByRoad
,
fusedGpsViewModel
.
getLocation
());
reNewListAdapter
=
new
ReNewListAdapter
(
pureCasesGroupByRoad
,
fusedGpsViewModel
.
getLocation
()
,
reNewNestedItemOnClick
);
dataBinding
.
recyclelist
.
setAdapter
(
reNewListAdapter
);
//下拉刷新
...
...
@@ -118,4 +121,14 @@ public class T04RenewListActivity extends AppCompatActivity {
}
}
}
private
class
ReNewNestedItemOnClick
implements
ReNewNestedAdapter
.
OnItemClickListener
{
@Override
public
void
onSpaceCaseClick
(
String
billingNumber2
)
{
Intent
intent
=
getIntent
();
intent
.
putExtra
(
"BillingNumber2"
,
billingNumber2
);
setResult
(
RESULT_OK
,
intent
);
finish
();
}
}
}
\ No newline at end of file
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