سفارشی‌سازی نشانگرها

پلاتفرم را انتخاب کنید: Android iOS JavaScript

کلاس ConsumerMapStyle روش‌های تنظیم‌کننده و دریافت‌کننده را با سفارشی‌سازی پویا برای نشانگرها و چندخطی‌ها ارائه می‌دهد. این کلاس را به‌صورت ناهمگام بااستفاده از روش ConsumerController.getConsumerMapStyle() نمایش می‌دهید.

سفارشی‌سازی میانای کاربر در چرخش‌های دستگاه حفظ می‌شود و تا زمانی که ConsumerController را جدا نکنید، به‌قوت خود باقی می‌ماند.

سفارشی‌سازی نشانگرها

برای تنظیم نوع نشانگر و ویژگی‌های آن، از روش ConsumerMapStyle.setMarkerStyleOptions() استفاده کنید. گزینه‌های نشانگر سفارشی شما مقادیر پیش‌فرض ارائه‌شده توسط Consumer SDK را لغو می‌کند. برای بازیابی مقادیر پیش‌فرض، setMarkerStyleOptions() را بااستفاده از null برای پارامتر MarkerOptions فراخوانی کنید. MarkerOptions فعال را بااستفاده از getMarkerStyleOptions() بازیابی کنید.

نوع نشانگر را انتخاب کنید

می‌توانید از نمادهای نشانگر زیر استفاده و آن‌ها را سفارشی‌سازی کنید:

  • TRIP_PICKUP_POINT - هنگام دنبال کردن سفر نمایش داده می‌شود
  • TRIP_DROPOFF_POINT - هنگام دنبال کردن سفر نمایش داده می‌شود
  • TRIP_INTERMEDIATE_DESTINATION
  • TRIP_VEHICLE - هنگام دنبال کردن سفر نمایش داده می‌شود

    Consumer SDK چرخش نماد TRIP_VEHICLE را درطول پایش سفر به‌روز می‌کند تا رفتار خودرو واقعی را هنگام طی کردن مسیر تقلید کند.

انتخاب گزینه‌های نشانگر

با دنبال کردن این مراحل می‌توانید نشانگرها را برای برنامه مصرف‌کننده خود سفارشی‌سازی کنید:

  1. از ویژگی‌های هر نشانگر ارائه‌شده توسط Google Maps MarkerOptions استفاده کنید.

  2. MarkerOptions را بااستفاده از سازنده آن بسازید.

  3. ویژگی‌های سفارشی را بااستفاده از روش‌های سبک «تنظیم‌کننده» مشخص کنید.

  4. اگر ترجیح می‌دهید، از عنصر میانای کاربر خودتان با تقلید از الگوهای ارائه‌شده توسط سازنده MarkerOptions استفاده کنید.

  5. برای خاموش کردن نشانگر، خصوصیت visible را روی false تنظیم کنید. سپس می‌توانید از عنصر میانای کاربر خودتان به‌جای آن استفاده کنید.

برای اطلاعات بیشتر، به Google Maps MarkerOptions مراجعه کنید.

نمونه سفارشی‌سازی نشانگر

جاوا

// Initializing marker options.
consumerController
    .getConsumerMapStyle()
    .addOnSuccessListener(
        consumerMapStyle -> {
          consumerMapStyle.setMarkerStyleOptions(
              MarkerType.TRIP_VEHICLE,
              new MarkerOptions()
                  .visible(false));
        });

// Reset marker options to default values.
consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE, null);

Kotlin

// Initializing marker options.
consumerController
  .getConsumerMapStyle()
  .addOnSuccessListener({ consumerMapStyle ->
    consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE, MarkerOptions().visible(false))
  })

// Reset marker options to default values.
consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE, null)

قدم بعدی چیست