Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A maneira mais simples de trabalhar com mapas no Xamarin.Android é aproveitar o aplicativo de mapas internos mostrado abaixo:
Quando você usa o aplicativo mapas, o mapa não fará parte do aplicativo. Em vez disso, seu aplicativo iniciará o aplicativo de mapas e carregará o mapa externamente. A próxima seção examina como usar o Xamarin.Android para iniciar mapas como o acima.
Criando a intenção
Trabalhar com o aplicativo mapas é tão fácil quanto criar uma Intenção com um URI apropriado, definir a ação como ActionView e chamar o método StartActivity. Por exemplo, o código a seguir inicia o aplicativo de mapas centralizado em uma determinada latitude e longitude:
var geoUri = Android.Net.Uri.Parse ("geo:42.374260,-71.120824");
var mapIntent = new Intent (Intent.ActionView, geoUri);
StartActivity (mapIntent);
Esse código é tudo o que é necessário para iniciar o mapa mostrado na captura de tela anterior. Além de especificar latitude e longitude, o esquema de URI para mapas dá suporte a várias outras opções.
Esquema de URI geográfico
O código acima usou o esquema geográfico para criar um URI. Esse esquema de URI dá suporte a vários formatos, conforme listado abaixo:
geo:latitude,longitude
– Abre o aplicativo de mapas centralizado em um lat/lon.geo:latitude,longitude?z=zoom
– Abre o aplicativo de mapas centralizado em um lat/lon e ampliado para o nível especificado. O nível de zoom pode variar de 1 a 23: 1 exibe toda a Terra e 23 é o nível de zoom mais próximo.geo:0,0?q=my+street+address
– Abre o aplicativo de mapas para o local de um endereço de rua.geo:0,0?q=business+near+city
– Abre o aplicativo mapas e exibe os resultados da pesquisa anotados.
As versões do URI que usam uma consulta (ou seja, o endereço de rua ou os termos de pesquisa) usam o serviço de geocodificador do Google para recuperar o local exibido no mapa. Por exemplo, o URI geo:0,0?q=coop+Cambridge
resulta no mapa mostrado abaixo:
Para obter mais informações sobre esquemas de URI geográfico, consulte Mostrar um local em um mapa.
Modo de Exibição de Rua
Além do esquema geográfico, o Android também dá suporte ao carregamento de exibições de rua de uma Intenção. Um exemplo do aplicativo street view iniciado do Xamarin.Android é mostrado abaixo:
Para iniciar um modo de exibição de rua, basta usar o google.streetview
esquema de URI, conforme demonstrado no seguinte código:
var streetViewUri = Android.Net.Uri.Parse (
"google.streetview:cbll=42.374260,-71.120824&cbp=1,90,,0,1.0&mz=20");
var streetViewIntent = new Intent (Intent.ActionView, streetViewUri);
StartActivity (streetViewIntent);
O esquema de URI google.streetview usado acima assume a seguinte forma:
google.streetview:cbll=lat,lng&cbp=1,yaw,,pitch,zoom&mz=mapZoom
Como você pode ver, há vários parâmetros com suporte, conforme listado abaixo:
lat
– A latitude do local a ser mostrado no modo de exibição de rua.lng
– A longitude do local a ser mostrado no modo de exibição de rua.pitch
– Ângulo do panorama de exibição de rua, medido do centro em graus em que 90 graus é reto para baixo e -90 graus é reto para cima.yaw
– Centro de exibição do panorama de exibição de rua, medido no sentido horário em graus do Norte.zoom
– Multiplicador de zoom para o panorama do street view, em que 1,0 = zoom normal, 2,0 = zoom de 2x, 3,0 = zoom de 4x etc.mz
– O nível de zoom do mapa que será usado ao acessar o aplicativo de mapas do modo de exibição de rua.
Trabalhar com o aplicativo de mapas interno ou o modo de exibição de rua é uma maneira fácil de adicionar rapidamente suporte de mapeamento. No entanto, a API de Mapas do Android oferece um controle mais fino sobre a experiência de mapeamento.