web-dev-qa-db-fra.com

Changer la région (zoom) pour mapView Swift

J'ai une carte et je dessine une destination entre deux repères et j'ai toujours ouvert un seul appel.

Mon problème est que je veux effectuer un zoom arrière un peu plus, mais j'ai essayé de le faire avec ce code et cela n'a pas fonctionné.

let span = MKCoordinateSpanMake(0.0275, 0.0275)
let coodinate = self.meLocation!
let region = MKCoordinateRegion(center: coodinate, span: span)
self.mapView.setRegion(region, animated: true)

Je suppose que faire la ligne pour la destination résoudre le problème:

func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer {
        let renderer = MKPolylineRenderer(overlay: overlay)
        renderer.strokeColor = UIColor(red: 2.0/255.0, green: 202.0/255.0, blue: 246.0/255.0, alpha: 1.0)
        renderer.lineWidth = 2.8



        return renderer

    }

Ma question est donc de savoir comment je peux effectuer un zoom arrière un peu plus par défaut.

MODIFIER:

J'ai suivi ce guide

7
mike vorisis

Le niveau de zoom dépend de la plage. Essayez de changer ces valeurs:

let span = MKCoordinateSpanMake(0.0275, 0.0275)

Modifier:

Selon la discussion, le remplissage convient mieux à votre carte.

Essayez de rembourrer les bords comme ceci:

self.mapView.setVisibleMapRect(self.mapView.visibleMapRect, edgePadding: UIEdgeInsetsMake(40.0, 20.0, 20, 20.0), animated: true)

Changer les valeurs pour un meilleur ajustement.

Remarque: appelez-le après:

self.mapView.setRegion(MKCoordinateRegionForMapRect(rect), animated: true)
9
Arpit Dongre

Vous devez setRegion vous souhaitez effectuer un zoom. Ce link peut vous aider à définir une région.

Merci:)

0
Karthick Selvaraj