diff --git a/OCH/mogo-och-shuttle-passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt b/OCH/mogo-och-shuttle-passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt index b1cba39ddd..6b1893ecc6 100644 --- a/OCH/mogo-och-shuttle-passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt +++ b/OCH/mogo-och-shuttle-passenger/src/m2/java/com/mogo/och/bus/passenger/presenter/PM2DrivingPresenter.kt @@ -1,6 +1,7 @@ package com.mogo.och.bus.passenger.presenter import androidx.lifecycle.LifecycleOwner +import com.amap.api.maps.model.LatLng import com.mogo.commons.mvp.Presenter import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant @@ -81,8 +82,29 @@ class PM2DrivingPresenter(view: PM2DrivingInfoFragment?) : } override fun updateLineStations(stations: MutableList) { + + val stationsList = mutableListOf() + val stationsListPass = mutableListOf() + + for (i in stations.indices){ + val station = stations[i] + val latLng = LatLng(station.gcjLat,station.gcjLon) + if(station.drivingStatus==1){//行驶信息,0初始值;1已经过;2当前站;3未到站 + stationsListPass.add(latLng) + }else if(station.drivingStatus==2){ + if(station.isLeaving){ + stationsListPass.add(latLng) + }else{ + stationsList.add(latLng) + } + }else{ + stationsList.add(latLng) + } + + } + ThreadUtils.runOnUiThread { - mView?.updateLineStations(stations) + mView?.updateLineStations(stationsList,stationsListPass) } PM2ADASModel.INSTANCE.updateHDMapStations(stations) } diff --git a/OCH/mogo-och-shuttle-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt b/OCH/mogo-och-shuttle-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt index 78d9568c90..2f5665618b 100644 --- a/OCH/mogo-och-shuttle-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt +++ b/OCH/mogo-och-shuttle-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt @@ -55,6 +55,12 @@ class PM2DrivingInfoFragment : line_name_tv.setTextColor(resources.getColor(R.color.m2_line_name_tv_color)) station_name_tv.setTextColor(resources.getColor(R.color.m2_line_name_tv_color)) + speed_tv.setVertrial(true) + val intArrayOf = intArrayOf( + requireContext().resources.getColor(R.color.shuttle_color_43cefe), + requireContext().resources.getColor(R.color.shuttle_color_1466fb) + ) + speed_tv.setmColorList(intArrayOf) // current_time_tv.onClick { @@ -163,6 +169,7 @@ class PM2DrivingInfoFragment : station_name_tv.text = resources.getString(R.string.m2_p_empty_tv) tv_distance.text = resources.getString(R.string.m2_p_empty_remain_km) tv_left_time.text = resources.getString(R.string.m2_p_empty_remain_minute) + noLineShow() } override fun createPresenter(): PM2DrivingPresenter { @@ -179,16 +186,12 @@ class PM2DrivingInfoFragment : } } - fun updateLineStations(stations: MutableList){ - var stationsList = mutableListOf() - for (i in stations.indices){ - val station = stations[i] - var latLng = LatLng(station.gcjLat,station.gcjLon) - stationsList.add(latLng) - } + fun updateLineStations(stations: MutableList,stationsPass: MutableList){ overMapView?.let { - it.drawSiteMarkers(stationsList, - BitmapFactory.decodeResource(resources,R.drawable.m2_map_staton_icon),0.5f,0.9f) + it.drawSiteMarkers(stations, + BitmapFactory.decodeResource(resources,R.drawable.m2_map_staton_icon),0.5f,0.5f) + it.drawSiteMarkers(stationsPass, + BitmapFactory.decodeResource(resources,R.drawable.m2_map_staton_arrived_icon),0.5f,0.5f) } } @@ -202,12 +205,10 @@ class PM2DrivingInfoFragment : tv_distance.text = resources.getString(R.string.m2_p_empty_remain_km) tv_left_time.text = resources.getString(R.string.m2_p_empty_remain_minute) tv_next_station_title.text = resources.getString(R.string.m2_p_station_title_arrived_tv) - tv_arrived_notice.visibility = View.VISIBLE - clg_distance_left_time.visibility = View.GONE + haveLineAndArrivedStation() }else{ //前往目的地中 tv_next_station_title.text = resources.getString(R.string.shuttle_p_next_station_title) - tv_arrived_notice.visibility = View.GONE - clg_distance_left_time.visibility = View.VISIBLE + haveLineAndArriveingStation() } } @@ -234,6 +235,31 @@ class PM2DrivingInfoFragment : "$time 分钟".also { tv_left_time.text = it } } + fun noLineShow(){ + // 没有线路展示 + group_not_select_line.visibility = View.VISIBLE + // 下一个站点 + group_stationinfo.visibility = View.GONE + // 距离和剩余大概时间 + clg_distance_left_time.visibility = View.GONE + // 到达站点 + tv_arrived_notice.visibility = View.GONE + } + // 有线路正在到站点 + fun haveLineAndArriveingStation(){ + group_not_select_line.visibility = View.GONE + group_stationinfo.visibility = View.VISIBLE + clg_distance_left_time.visibility = View.VISIBLE + tv_arrived_notice.visibility = View.GONE + } + // 有线路到达站点 + fun haveLineAndArrivedStation(){ + group_not_select_line.visibility = View.GONE + group_stationinfo.visibility = View.VISIBLE + clg_distance_left_time.visibility = View.GONE + tv_arrived_notice.visibility = View.VISIBLE + } + companion object { private val TAG = PM2DrivingInfoFragment::class.java.simpleName const val LOOP_TIME_TEXT = 10 * 1000L diff --git a/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_car_icon.png b/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_car_icon.png index 2520ae1c9e..b3a0641e34 100644 Binary files a/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_car_icon.png and b/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_car_icon.png differ diff --git a/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_end_icon.png b/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_end_icon.png index 2efd3a52eb..39ffc9052f 100644 Binary files a/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_end_icon.png and b/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_end_icon.png differ diff --git a/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_start_icon.png b/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_start_icon.png index d7ab9231d9..c970699aac 100644 Binary files a/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_start_icon.png and b/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_start_icon.png differ diff --git a/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_staton_arrived_icon.png b/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_staton_arrived_icon.png new file mode 100644 index 0000000000..39be18953c Binary files /dev/null and b/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_staton_arrived_icon.png differ diff --git a/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_staton_icon.png b/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_staton_icon.png index 1314028434..d90c5a2b71 100644 Binary files a/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_staton_icon.png and b/OCH/mogo-och-shuttle-passenger/src/m2/res/drawable-nodpi/m2_map_staton_icon.png differ diff --git a/OCH/mogo-och-shuttle-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml b/OCH/mogo-och-shuttle-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml index dfd6973a86..791644deff 100644 --- a/OCH/mogo-och-shuttle-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml +++ b/OCH/mogo-och-shuttle-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml @@ -62,7 +62,7 @@ android:maxWidth="@dimen/dp_600" android:singleLine="true" android:textColor="@color/m2_line_name_tv_color" - android:textSize="@dimen/dp_20" + android:textSize="@dimen/dp_26" android:textStyle="bold" app:customGap="0.2" app:layout_constraintEnd_toEndOf="@+id/iv_line_name_container" @@ -123,20 +123,21 @@ @@ -152,6 +153,7 @@ android:id="@+id/bg_distance_lefttime" android:layout_width="@dimen/dp_182" android:layout_height="@dimen/dp_48" + android:layout_marginTop="@dimen/dp_22" android:background="@drawable/bg_driving_distance_lefttime" app:layout_constraintStart_toStartOf="@+id/tv_next_station_title" app:layout_constraintTop_toBottomOf="@+id/station_name_tv" /> @@ -200,6 +202,7 @@ android:gravity="center" android:text="@string/m2_p_arrived_station_title" android:textColor="@color/shuttle_color_1f860d" + android:layout_marginTop="@dimen/dp_22" android:textSize="@dimen/dp_18" android:visibility="gone" app:layout_constraintStart_toStartOf="@+id/tv_next_station_title" @@ -219,13 +222,13 @@ - + app:layout_constraintBottom_toBottomOf="parent" /> + android:textSize="@dimen/dp_46" /> #2D3E5F #1F860D #B9E7C0 + #43CEFE + #1466FB \ No newline at end of file