تخصيص العلامة
في الإصدارات السابقة من حزمة Consumer SDK، كنت تستخدِم عنصر
MarkerStyleOptions
في حزمة Consumer SDK لتخصيص سمات نمط العلامة. في الإصدار 1.0 من Consumer
SDK، يمكنك استخدام عنصر MarkerOptions
مباشرةً من حزمة SDK لتطبيق "خرائط Google".
// 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
خيارات النمط التلقائية المحدّدة من حزمة SDK لنوع علامة معيّن إذا لم يتم ضبط النمط بعد أو إذا تم ضبط خيارات النمط على 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);
إذا كنت لا تريد إنشاء أسلوب جديد من البداية، يمكنك تعديل الأسلوب التلقائي. لا يعدّل المثال التالي سوى رمز الاستلام ويستخدم الإعدادات التلقائية لسمة SDK في بقية خيارات العلامة.
// 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));
تخصيص الخطوط المتعددة
في الإصدارات السابقة من حزمة Consumer SDK، كنت تستخدِم عنصر
PolylineStyleOptions
في حزمة Consumer SDK لتخصيص سمات نمط الخطوط المتعددة. في الإصدار 1.0 من "حزمة تطوير البرامج لتطبيقات المستهلك"، يمكنك استخدام عنصر PolylineOptions
من حزمة تطوير البرامج لتطبيق "خرائط Google"
لتخصيص سمات نمط الخطوط المتعددة الأساسية وعنصر TrafficStyle
لتخصيص ألوان حركة المرور في الخطوط المتعددة.
تتوفّر الخطوط المتعددة للمركبات في الإصدار التجريبي من حزمة Consumer SDK 1.0. إذا كانت المركبات مرئية، يتم إلغاء لون الخط المتعدد الأساسي من خلال ألوان المركبات. لا تكون بيانات الزيارات مرئية تلقائيًا. يتم ملء الحقول في TrafficStyle
التي لم يتم
ضبطها بالقيم التلقائية التي تحدّدها حزمة تطوير البرامج (SDK).
// 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
خيارات التصميم التلقائية لحزمة تطوير البرامج (SDK) لنوع خط ملتوٍ معيّن في حال عدم ضبط أي خيارات بعد، أو في حال ضبط خيارات التصميم علىnull
. وينطبق ذلك على كلٍّ من القاعدة PolylineOptions
و
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);
إذا كنت لا تريد إنشاء أسلوب جديد من البداية، يمكنك تعديل الأسلوب التلقائي. لا يعدّل المثال التالي سوى لون الخطوط المتعددة للمسار النشط الأساسي، ويستخدم إعدادات النمط التلقائية لحزمة SDK لبقية خيارات العلامات.
// Only customize the remaining route polyline color.
PolylineOptions remainingRouteStyleOptions =
consumerMapStyle.getPolylineStyleOptions(PolylineType.REMAINING_ROUTE);
consumerMapStyle.setPolylineStyleOptions(
remainingRouteStyleOptions.color(Color.DARK_BLUE));