correção zoom MapKit
Pergunta
Eu tenho vista MapKit e eu preciso passo correção zoom. O usuário só deve aumentar ou diminuir por 4 vezes. Como posso fazê-lo em MapKit?
Solução
O mapa não fornece um método para restringir o incremento de zoom. Devo dizer também que a implementação padrão do ver o mapa nas ligações do iPhone para melhor experiência do usuário, eu acho. Eu, pessoalmente, não gosto de aplicativos que limitam minhas capacidades sem uma boa razão.
Para responder à sua pergunta, porém, você pode controlar manualmente o zoom, desativando MKMapView.zoomEnabled
propriedade. Então você pode expor um zoom botões que mudam a região do mapa mostrado, usando setRegion:animated:
Aqui está um código de exemplo sobre como ampliar o mapa:
-(void)zoomMap:(MKMapView *)map withLevelMultiple:(void)levelMultiplier {
MKCoordinateRegion region = map.region;
region.span.latitudeDelta /= levelMultiplier;
region.span.longitudeDelta /= levelMultiplier;
[map setRegion:region animated:YES];
}