Rota çoklu çizgilerini özelleştirin

Platform seçin: Android iOS JavaScript

Rota çoklu çizgilerini ConsumerMapStyle.setPolylineStyleOptions yöntemini kullanarak özelleştirirsiniz. Özel poli çizgisi seçenekleri belirlerseniz bu seçenekler, Tüketici SDK'sı tarafından sağlanan varsayılan değerleri geçersiz kılar.

Varsayılan değerleri geri yüklemek için PolylineOptions parametresi için null ile setPolylineStyleOptions işlevini çağırın.

Etkin PolylineOptions öğesini almak için getPolylineStyleOptions yöntemini kullanın.

Daha fazla bilgi için ConsumerMapStyle.setPolylineStyleOptions başlıklı makaleyi inceleyin.

Rota çoklu çizgisi türleri

Aşağıdaki rota çoklu çizgi türlerini özelleştirebilirsiniz:

  • ACTIVE_ROUTE
  • REMAINING_ROUTE

ACTIVE_ROUTE ve REMAINING_ROUTE, bir geziyi takip ederken gösterilir ve aracın rotasını temsil eder.

Rota çoklu çizgisi özellikleri

Google Haritalar, PolylineOptions içindeki her poli çizgisi için özelleştirilebilir özellikler sağlar.

  • PolylineOptions sınıfını oluşturmak için sınıfın kurucusunu kullanın.

  • Özelleştirilmiş özellikleri belirtmek için "Setter" stili yöntemlerini kullanın. Yöntem her mülk için varsayılan değerler sağladığından, yalnızca özel değerleri belirtmeniz gerekir.

  • Poli çizgisini kapatmak için visible değerini false olarak ayarlayın.

Daha fazla bilgi için Android geliştirici dokümanlarındaki PolylineOptions bölümüne bakın.

Örnek

Java

// Initializing polyline style options.
consumerController
    .getConsumerMapStyle()
    .addOnSuccessListener(
        consumerMapStyle -> {
          consumerMapStyle.setPolylineStyleOptions(
              PolylineType.ACTIVE_ROUTE,
              new PolylineOptions()
                  .visible(false));
        });

// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null);

Kotlin

// Initializing polyline options.
consumerController
  .getConsumerMapStyle()
  .addOnSuccessListener({ consumerMapStyle ->
    consumerMapStyle.setPolylineStyleOptions(
      PolylineType.ACTIVE_ROUTE,
      PolylineOptions().visible(false)
    )
  })

// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null)

Etkin ve Kalan Rota

Yolculuğu paylaşma özelliği etkinleştirildiğinde uygulamanız, aracınızın etkin ve kalan rotasını göstermek için çoklu çizgiler kullanarak kullanıcının deneyimini özelleştirebilir.

  • Etkin rota, aracın tüketicinin etkin seyahatindeki bir sonraki yol noktasına ulaşmak için şu anda izlediği yoldur.

  • Kalan rota, aracın etkin rotanın ötesinde kat etmesi gereken yoldur. Etkin rota yol noktası son gezi yol noktası olduğunda kalan rota mevcut değildir.

Uygulamanızda etkin ve kalan çoklu çizgilerin görünürlüğünü özelleştirebilir ve kontrol edebilirsiniz. Varsayılan olarak etkin rota görünür, kalan rota ise görünmez.

Örnek

Java

// Initializing polyline options.
consumerController
    .getConsumerMapStyle()
    .addOnSuccessListener(
        consumerMapStyle -> {
          consumerMapStyle.setPolylineStyleOptions(
              PolylineType.ACTIVE_ROUTE,
              new PolylineOptions()
                  .color(Color.BLUE));
          consumerMapStyle.setPolylineStyleOptions(
              PolylineType.REMAINING_ROUTE,
              new PolylineOptions()
                  .color(Color.BLACK)
                  .width(5)
                  .visible(true));
        });

// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null);
consumerMapStyle.setPolylineStyleOptions(PolylineType.REMAINING_ROUTE, null);

Kotlin

// Initializing polyline options.
consumerController
  .getConsumerMapStyle()
  .addOnSuccessListener({ consumerMapStyle ->
    {
      consumerMapStyle.setPolylineStyleOptions(
        PolylineType.ACTIVE_ROUTE,
        PolylineOptions().color(Color.BLUE)
      )

      consumerMapStyle.setPolylineStyleOptions(
        PolylineType.REMAINING_ROUTE,
        PolylineOptions().color(Color.BLACK).width(5).visible(true)
      )
    }
  })

// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null)

consumerMapStyle.setPolylineStyleOptions(PolylineType.REMAINING_ROUTE, null)

Trafik bilincine sahip çoklu çizgiler

Poli çizginin trafik katmanı varsayılan olarak devre dışıdır. Bu seçeneği etkinleştirdiğinizde, oluşturma aracı, normal olmayan trafik alanlarını temsil eden segmentleri rota poli çizgisinin üzerine çizer. Trafik durumuna bağlı bir ofset içerir. Daha fazla bilgi için Android Developers'daki Polyline belgelerine bakın.

Google Haritalar, trafik koşullarını dört hız türünden biri olarak gösterir. Her hız türü için rengi özelleştirebilirsiniz.

Trafik bilinçli çoklu çizgileri etkinleştirmek için bir TrafficStyle nesnesi oluşturun ve ardından setPolylineTrafficStyle()'i çağırarak ConsumerMapStyle'a aktarın.

Örnek

Java

// TrafficStyle is part of the Consumer SDK.
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);

Kotlin

// TrafficStyle is part of the Consumer SDK.
val 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)