Di chuyển cho tùy chỉnh SDK người dùng Android phiên bản 1.0

Tuỳ chỉnh điểm đánh dấu

Trong các phiên bản trước của SDK người tiêu dùng, bạn đã sử dụng đối tượng MarkerStyleOptions của SDK người tiêu dùng để tuỳ chỉnh các thuộc tính kiểu điểm đánh dấu. Trong SDK người tiêu dùng phiên bản 1.0, bạn trực tiếp sử dụng đối tượng MarkerOptions từ SDK Maps.

// Centering the marker anchor at (0.5, 0.5) is recommended.
// For vehicle markers, set flat to true to allow the vehicle marker to freely
// rotate flat on the map (rather than always have it face the camera).
MarkerOptions vehicleMarkerOptions = new MarkerOptions()
    .flat(true)
    .anchor(0.5f, 0.5f)
    .icon(vehicleIcon)
    .zIndex(1.0f);
consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE);

ConsumerMapStyle trả về các lựa chọn kiểu mặc định do SDK chỉ định cho một loại điểm đánh dấu nhất định nếu kiểu chưa được đặt hoặc nếu kiểu đã được đặt thành null.

// ConsumerMapStyle returns the SDK-set default style options if none has been set yet.
MarkerOptions defaultPickupPointStyleOptions = consumerMapStyle.getMarkerStyleOptions(MarkerType.PICKUP_POINT);

// Setting the style to null reverts the style back to the SDK-set default properties.
consumerMapStyle.setMarkerStyleOptions(MarkerType.PICKUP_POINT, /* markerStyleOptions= */ null);
MarkerOptions defaultPickupPointStyleOptions = consumerMapStyle.getMarkerStyleOptions(MarkerType.PICKUP_POINT);

Nếu không muốn tạo kiểu mới từ đầu, bạn có thể sửa đổi kiểu mặc định. Ví dụ sau chỉ sửa đổi biểu tượng đến lấy hàng và sử dụng chế độ cài đặt mặc định của SDK cho các tuỳ chọn điểm đánh dấu còn lại.

// getMarkerStyleOptions returns the default pickup point style options, since
// the custom style hasn't been set yet.
MarkerOptions pickupPointStyleOptions =
  consumerMapStyle.getMarkerStyleOptions(MarkerType.PICKUP_POINT);
// Modify the icon value and set the style.
consumerMapStyle.setMarkerStyleOptions(
  pickupPointStyleOptions.icon(pickupPointIcon));

Tuỳ chỉnh nhiều dòng

Trong các phiên bản trước đây của SDK người dùng, bạn đã sử dụng đối tượng PolylineStyleOptions của SDK người tiêu dùng để tuỳ chỉnh các thuộc tính kiểu nhiều đường kẻ. Trong SDK người tiêu dùng phiên bản 1.0, bạn sử dụng đối tượng PolylineOptions từ SDK Maps để tuỳ chỉnh các thuộc tính kiểu nhiều đường cơ sở và đối tượng TrafficStyle để tuỳ chỉnh màu lưu lượng truy cập nhiều đường.

Hình nhiều đường của lưu lượng truy cập có sẵn trong biến thể alpha của SDK người tiêu dùng phiên bản 1.0. Nếu lưu lượng truy cập hiển thị, màu hình nhiều đường cơ sở sẽ bị màu lưu lượng truy cập ghi đè. Lưu lượng truy cập không hiển thị theo mặc định. Các trường trong TrafficStyle chưa được thiết lập sẽ được điền vào bằng giá trị mặc định do SDK chỉ định.

// PolylineOptions is from Maps SDK
PolylineOptions polylineOptions = new PolylineOptions()
  .color(color)
  .width(width)
  .geodesic(geodesic)
  .startCap(startCap)
  .endCap(endCap)
  .zIndex(zIndex);
consumerMapStyle.setPolylineStyleOptions(
  PolylineType.ACTIVE_ROUTE, polylineOptions);

// TrafficStyle is from ConsumerSDK
TrafficStyle trafficStyle = TrafficStyle.builder()
  .setTrafficVisibility(true)
  .setTrafficColor(SpeedType.NO_DATA, Color.GREY)
  .setTrafficColor(SpeedType.NORMAL_VALUE, Color.BLUE)
  .setTrafficColor(SpeedType.SLOW_VALUE, Color.ORANGE)
  .setTrafficColor(SpeedType.TRAFFIC_JAM, Color.RED)
  .build();
consumerMapStyle.setPolylineTrafficStyle(PolylineType.ACTIVE_ROUTE, trafficStyle);

ConsumerMapStyle trả về các tuỳ chọn kiểu mặc định của SDK cho một kiểu nhiều dòng nhất định nếu chưa đặt kiểu nào hoặc nếu các tuỳ chọn kiểu được đặt thành null. Cách này áp dụng cho cả PolylineOptions cơ sở và TrafficStyle.

// ConsumerMapStyle returns the SDK's default style options if none has been set yet.
PolylineOptions defaultActiveRouteStyleOptions = consumerMapStyle.getPolylineStyleOptions(PolylineType.ACTIVE_ROUTE);

// Setting the style to null reverts the style back to the SDK-set default properties.
consumerMapStyle.setPolylineStyleOptions(
  PolylineType.ACTIVE_ROUTE, /* polylineStyleOptions= */ null);
PolylineOptions defaultActiveRouteStyleOptions =
  consumerMapStyle.getPolylineStyleOptions(PolylineType.ACTIVE_ROUTE);

Nếu không muốn tạo kiểu mới từ đầu, bạn có thể sửa đổi kiểu mặc định. Ví dụ sau đây chỉ sửa đổi màu nhiều đường của tuyến cơ sở đang hoạt động và sử dụng chế độ cài đặt kiểu mặc định của SDK cho các tuỳ chọn điểm đánh dấu còn lại.

// Only customize the remaining route polyline color.
PolylineOptions remainingRouteStyleOptions =
     consumerMapStyle.getPolylineStyleOptions(PolylineType.REMAINING_ROUTE);
consumerMapStyle.setPolylineStyleOptions(
  remainingRouteStyleOptions.color(Color.DARK_BLUE));