web-dev-qa-db-ja.com

mapViewの領域(ズーム)を変更しますSwift

私は地図を持っていて、2つのピンの間に目的地を描き、常に1つのコールアウトを開いています。

私の問題は、もう少しズームアウトしたいのですが、このコードでそれを実行しようとしましたが、機能しませんでした。

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

私は目的地のラインを作ることが問題を起こすと思います:

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

    }

だから私の質問は、デフォルトでもう少しズームアウトする方法です。

編集:

私は従った このガイド

7
mike vorisis

ズームのレベルはスパンによって異なります。次の値を変更してみてください。

let span = MKCoordinateSpanMake(0.0275, 0.0275)

編集:

議論によると、パディングはマップに適しています。

次のようにエッジをパディングしてみてください。

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

より適切にフィットするように値を変更します。

注:次の後に呼び出します。

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

ズームしたいsetRegionする必要があります。この リンク は地域を設定するのに役立つかもしれません。

ありがとう:)

0