diff --git a/app/src/main/java/com/oneclouds/cargo/ui/home/OrderDetailsActivity.java b/app/src/main/java/com/oneclouds/cargo/ui/home/OrderDetailsActivity.java index a941c88..0310c89 100644 --- a/app/src/main/java/com/oneclouds/cargo/ui/home/OrderDetailsActivity.java +++ b/app/src/main/java/com/oneclouds/cargo/ui/home/OrderDetailsActivity.java @@ -100,6 +100,7 @@ public class OrderDetailsActivity extends BaseActivity { private boolean key = false; private int id = 0; private ArrayList carPoints = new ArrayList<>(); + private ArrayList driverPoints = new ArrayList<>(); @Override public void msgMethod(Message m) { @@ -169,6 +170,8 @@ public class OrderDetailsActivity extends BaseActivity { if (bb.getCode() == 200) { new Thread(() -> { carPoints.clear(); + driverPoints.clear(); + ArrayList> pathDriver = bb.getData().getVo().get(0).getPath(); ArrayList> path = bb.getData().getVo().get(1).getPath(); for (int i = 0; i < path.size(); i++) { if (path.get(i).size() > 1) { @@ -184,6 +187,17 @@ public class OrderDetailsActivity extends BaseActivity { } } + //司机轨迹 + if (pathDriver.size() > 0) { + for (int i = 0; i < pathDriver.size(); i++) { + if (pathDriver.get(i).size() > 1) { + double lon = Double.parseDouble(pathDriver.get(i).get(0)); + double lat = Double.parseDouble(pathDriver.get(i).get(1)); + driverPoints.add(new LatLng(lat, lon)); + } + } + } + runOnUiThread(() -> { //绘制起始位置和目的地marker @@ -192,17 +206,28 @@ public class OrderDetailsActivity extends BaseActivity { .position(new LatLng(Double.parseDouble(bb.getData().getStartLat()), Double.parseDouble(bb.getData().getStartLon())))); - aMap.addMarker(new MarkerOptions() .icon(BitmapDescriptorFactory.fromResource(R.mipmap.zhong)) .position(new LatLng(Double.parseDouble(bb.getData().getEndLat()), Double.parseDouble(bb.getData().getEndLon())))); + //添加车辆轨迹 aMap.addPolyline((new PolylineOptions()) .addAll(carPoints) //线的宽度 - .width(10) - .color(getResources().getColor(R.color.teal_200))); + .width(20f) + .setCustomTexture(BitmapDescriptorFactory.fromResource(R.drawable.icon_roud_type))); + + + if (driverPoints.size() > 0) { + //添加司机轨迹 + aMap.addPolyline((new PolylineOptions()) + .addAll(driverPoints) + //线的宽度 + .width(20f) + .setCustomTexture(BitmapDescriptorFactory.fromResource(R.drawable.icon_roud_red))); + } + LatLngBounds.Builder builder = LatLngBounds.builder(); for (int i = 0; i < carPoints.size(); i++) { builder.include(carPoints.get(i)); diff --git a/app/src/main/res/drawable-xxhdpi/icon_roud_red.jpg b/app/src/main/res/drawable-xxhdpi/icon_roud_red.jpg new file mode 100644 index 0000000..f77a7b5 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/icon_roud_red.jpg differ diff --git a/app/src/main/res/drawable-xxhdpi/icon_roud_type.png b/app/src/main/res/drawable-xxhdpi/icon_roud_type.png new file mode 100644 index 0000000..94fbba2 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/icon_roud_type.png differ