A versão 3.1.0 Beta do SDK do Maps para Android é uma nova implementação com a mesma plataforma de API da versão anterior. Nela, todas as classes e os métodos permanecem iguais, e há novos recursos para você testar.
- Personalização dos mapas
- Como lidar com conflito de marcadores
- Personalização de polilinha
Este guia mostra como usar os novos recursos.
Personalização dos mapas (Beta)
Com a Estilização de mapas baseada na nuvem, você tem várias ferramentas e recursos para personalizar e gerenciar mais facilmente a forma como os mapas são estilizados. Em vez de estilizar seu mapa em código usando as APIs e os SDKs do Google Maps, é possível gerenciar e estilizar seus mapas no console do Google Cloud. Para ver mais informações, consulte Visão geral da personalização de mapas para Android.
Como lidar com conflito de marcadores (Beta)
Você pode especificar se os marcadores personalizados poderão substituir as etiquetas padrão do Mapa básico quando houver um conflito e indicar a prioridade relativa entre esses marcadores. Para mais informações, consulte Como lidar com conflito de marcadores (Android).
Personalização de polilinha (Beta)
Agora há várias novas maneiras de personalizar a aparência das polilinhas:
- As polilinhas de várias cores definem segmentos de polilinha com cores diferentes.
- As polilinhas em gradiente colorem uma polilinha usando um gradiente de duas cores.
- As polilinhas estampadas definem o estilo de uma polilinha usando bitmaps repetidos.
Como criar uma polilinha de várias cores
É possível usar períodos para segmentos de cor individuais de uma polilinha, criando objetos StyleSpan
e adicionando-os a PolylineOptions
com os métodos addSpan()
ou addSpans()
. Por padrão, cada item na matriz define a cor do segmento da linha correspondente. O exemplo a seguir mostra a definição de cores de segmentos para criar uma polilinha com segmentos vermelhos e verdes:
Kotlin
val line = map.addPolyline( PolylineOptions() .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693)) .addSpan(StyleSpan(Color.RED)) .addSpan(StyleSpan(Color.GREEN)) )
Java
Polyline line = map.addPolyline(new PolylineOptions() .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693)) .addSpan(new StyleSpan(Color.RED)) .addSpan(new StyleSpan(Color.GREEN)));
Como criar uma polilinha em gradiente
Você pode definir um gradiente especificando dois números inteiros de alfa-vermelho-verde-azul (ARGB, na sigla em inglês) de 32 bits para determinar as cores inicial e final do traço. Configure essa propriedade no objeto de opções da forma chamando PolylineOptions.addSpan()
.
O exemplo a seguir mostra como criar uma polilinha em gradiente vermelho a amarelo, do Woodland Park Zoo até Kirkland, WA.
Kotlin
val line = map.addPolyline( PolylineOptions() .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693)) .addSpan( StyleSpan( StrokeStyle.gradientBuilder( Color.RED, Color.YELLOW ).build() ) ) )
Java
Polyline line = map.addPolyline(new PolylineOptions() .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693)) .addSpan(new StyleSpan(StrokeStyle.gradientBuilder(Color.RED, Color.YELLOW).build())));
Como criar uma polilinha estampada
Você pode definir a aparência de uma polilinha como uma textura de bitmap repetida. Para fazer isso, crie um StampStyle
de TextureStyle
e defina essa propriedade no objeto de opções da forma chamando PolylineOptions.addSpan()
como mostrado aqui:
Kotlin
val stampStyle = TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.walking_dot)).build() val span = StyleSpan(StrokeStyle.colorBuilder(Color.RED).stamp(stampStyle).build()) map.addPolyline( PolylineOptions() .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693)) .addSpan(span) )
Java
StampStyle stampStyle = TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.walking_dot)).build(); StyleSpan span = new StyleSpan(StrokeStyle.colorBuilder(Color.RED).stamp(stampStyle).build()); map.addPolyline(new PolylineOptions() .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693)) .addSpan(span));
Importar a biblioteca de utilitários compatível com a versão Beta
Se você estiver usando a biblioteca de utilitários da API Google Maps Android (link em inglês), será necessário atualizar as dependências do projeto para substituir a versão atual por aquela que é compatível com a Beta. Para isso:
- Importe a biblioteca de utilitários compatível com a versão Beta no arquivo
build.gradle
:implementation 'com.google.maps.android:android-maps-utils-v3:1.3.1'
- Remova o seguinte do
build.gradle
para excluir a biblioteca de utilitários não compatível com a versão Beta:implementation 'com.google.maps.android:android-maps-utils:1.3.1'
Executar as amostras
O repositório de amostras do Google no GitHub inclui apps de exemplo que demonstram o uso do SDK do Maps para Android v3.1.0 Beta (links em inglês).
- Amostras do SDK do Maps para Android
- Amostras do SDK do Places para Android (apenas para uso com o Maps v3.1.0 Beta)