From 6d25cf9ad44114136558e5f51def3daae70fcf6a Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Sun, 24 Apr 2022 15:34:37 +0800 Subject: [PATCH] =?UTF-8?q?[driver=20passenger=20]=20bus=20=E4=B9=98?= =?UTF-8?q?=E5=AE=A2=E5=B1=8F=E7=AB=99=E7=82=B9UI=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusPassengerLineStationsAdapter.java | 26 ++++++++++++++++--- .../ui/BusPassengerMapDirectionView.java | 4 +-- .../ui/BusPassengerRouteFragment.java | 14 ++++++++-- .../bg_bus_p_middle_station_circle.xml | 6 +++++ .../main/res/layout/bus_p_base_fragment.xml | 4 ++- .../main/res/layout/bus_p_route_fragment.xml | 6 +++-- .../res/layout/bus_p_stations_end_item.xml | 19 +++++++++----- .../res/layout/bus_p_stations_middle_item.xml | 25 ++++++++++++++---- .../res/layout/bus_p_stations_start_item.xml | 25 +++++++++++------- .../src/main/res/values-sw320dp/dimens.xml | 6 ++++- .../src/main/res/values/dimens.xml | 6 ++++- 11 files changed, 109 insertions(+), 32 deletions(-) create mode 100644 OCH/mogo-och-bus-passenger/src/main/res/drawable/bg_bus_p_middle_station_circle.xml diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java index 8768a0623e..be1455d093 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/adapter/BusPassengerLineStationsAdapter.java @@ -28,6 +28,7 @@ public class BusPassengerLineStationsAdapter extends RecyclerView.Adapter stations){ this.mContext = context; @@ -57,41 +58,58 @@ public class BusPassengerLineStationsAdapter extends RecyclerView.Adapter implements IBusPassengerMapViewCallback { + BusPassengerBaseFragment + implements IBusPassengerMapViewCallback { private final String TAG = "BusPassengerRouteFragment"; @@ -224,6 +224,10 @@ public class BusPassengerRouteFragment extends mStationsList.addAll(stations); mAdapter.notifyDataSetChanged(); + if (currentStationIndex > -1){ + updateCurrentStation(currentStationIndex); + } + if (currentStationIndex == 0 && isArrived){ //到达始发站且并未出发, 恢复站点marker 清楚路径 清空路径点 clearPolyline(); if (mMapDirectionView != null) mMapDirectionView.clearCoordinatesLatLng(); @@ -282,4 +286,10 @@ public class BusPassengerRouteFragment extends int speedKM = (int) (Math.abs(speed) * 3.6F); mSpeedTv.setText(String.valueOf(speedKM)); } + + public void updateCurrentStation(int position) { + if (mStationsListRv != null){ + mStationsListRv.smoothScrollToPosition(position); + } + } } diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable/bg_bus_p_middle_station_circle.xml b/OCH/mogo-och-bus-passenger/src/main/res/drawable/bg_bus_p_middle_station_circle.xml new file mode 100644 index 0000000000..4dca66c4fe --- /dev/null +++ b/OCH/mogo-och-bus-passenger/src/main/res/drawable/bg_bus_p_middle_station_circle.xml @@ -0,0 +1,6 @@ + + + + + diff --git a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_base_fragment.xml b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_base_fragment.xml index d60bc0ae92..557e12642e 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_base_fragment.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_base_fragment.xml @@ -53,13 +53,15 @@ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_route_fragment.xml b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_route_fragment.xml index dc85f5d3b6..badb81fb9e 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_route_fragment.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_route_fragment.xml @@ -145,10 +145,12 @@ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_end_item.xml b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_end_item.xml index 3468664cc3..9d2edfd07f 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_end_item.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_end_item.xml @@ -1,12 +1,13 @@ + app:layout_constraintRight_toLeftOf="@+id/bus_p_end_tag" + app:layout_constraintBottom_toBottomOf="parent"/> + app:layout_constraintBottom_toBottomOf="@+id/bus_p_end_station" + app:layout_constraintTop_toTopOf="@+id/bus_p_end_station"/> - + + app:layout_constraintTop_toTopOf="@+id/bus_p_middle_station" + app:layout_constraintBottom_toBottomOf="@+id/bus_p_middle_station"/> \ No newline at end of file diff --git a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_start_item.xml b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_start_item.xml index 73d61aa690..50ed06a589 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_start_item.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_stations_start_item.xml @@ -1,12 +1,13 @@ + app:layout_constraintTop_toTopOf="parent" /> + app:layout_constraintTop_toTopOf="@+id/bus_p_start_station" + app:layout_constraintBottom_toBottomOf="@+id/bus_p_start_station"/> 36px 80px 100px - 50px + 80px + 60px 6px 638px @@ -52,4 +53,7 @@ 44px 55px 40px + + 584px + 550px \ No newline at end of file diff --git a/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml b/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml index bb114661c1..6ad2fdc16a 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml @@ -44,7 +44,8 @@ 36px 80px 100px - 50px + 80px + 60px 6px 638px @@ -53,4 +54,7 @@ 44px 55px 40px + + 584px + 550px \ No newline at end of file