マップ上に1つのピンの座標があります。私はそのピンにマップを集中させようとしますが、ピンの真ん中を画面の1/3の位置に保持したくありません。私は次の回避策でそれをやろうとしました:どのようにして、選択したピンがマップの中央になく、1/3になるようにマップビューを中央に配置できますか?
let coordinateRegion = MKCoordinateRegionMakeWithDistance(coordinatesOfThePin, 500, 500)
mapView.setRegion(coordinateRegion, animated: true)
let frame = mapView.frame
let myPoint = CGPointMake(frame.midX, frame.midY/3)
let myCoordinate = mapView.convertPoint(myPoint, toCoordinateFromView: mapView)
let coordinateRegion2 = MKCoordinateRegionMakeWithDistance(myCoordinate, 500, 500)
mapView.setRegion(coordinateRegion2, animated: true)
ただし、マップの最初の位置によってランダムな位置が表示されます。あなたはポイントがスケールで現在のズームを使用する場合は
-------------------
| |
| |
| X | <-- my pin in the 1/3 of the visible map area.
| |
| |
| |
| |
| |
| |
| |
| |
-------------------
はhttp://stackoverflow.com/a/15421512/1271826 – Rob
することができます参照してください。また、MKMapCameraを使用してください – jtbandes