2016-10-29 15 views
0

次のコードがありますが、場所が示されていません。スウィフトマップキットの注釈

import Foundation 
import UIKit  
import MapKit  
import CoreLocation 

class ViewTwo : UIViewController { 

@IBOutlet var Map: MKMapView! 

override func didReceiveMemoryWarning() { 
    super.viewDidLoad() 
    var location = CLLocationCoordinate2DMake(51.385493, 6.741528) 
    var span = MKCoordinateSpanMake(0.2, 0.2) 
    var region = MKCoordinateRegion(center: location , span: span) 
    Map.setRegion(region, animated: true) 

    var annotation = MKPointAnnotation() 
    annotation.coordinate = location 
    annotation.title = "hi" 
    annotation.coordinate = location 
    Map.addAnnotation(annotation) 
} 

ご協力ありがとうございます。

+3

あなたdidReceiveMemoryWarning()でコードを操作しています。 YoはviewDidLoad()関数でコードを書くべきです。 – emresancaktar

答えて

0

didReceiveMemoryWarning()の内部で作業しているとしたように、viewDidLoad()に配置して、ビューがロードされたときにコードが呼び出されるようにします。

+1

正しい方法で作業する方法を説明してください – MZaragoza

1

は、ここでは、この

self.Map.setCamera(camera, animated: true) 
2

があるかもしれませんいくつかのことを試してみてください。

  1. は、viewDidLoadviewDidAppearまたはviewWillAppearとしてビューイベントにそこから出て、あなたのコードを移動し

    。あなたは、ユーザーの場所にアクセスしたい場合は、その場合には、

    override func viewDidLoad() { 
        super.viewDidLoad() 
        var location = CLLocationCoordinate2DMake(51.385493, 6.741528) 
        var span = MKCoordinateSpanMake(0.2, 0.2) 
        var region = MKCoordinateRegion(center: location , span: span) 
        Map.setRegion(region, animated: true) 
        var annotation = MKPointAnnotation() 
        annotation.coordinate = location 
        annotation.title = "hi" 
        annotation.coordinate = location 
        Map.addAnnotation(annotation) 
    } 
    
  2. 慎重にあなたMUST locationManagerを経由して、それのための要求とに適切な文字列を追加します。私は最初のものとあなたの例を紹介します。 plistファイル

  3. 最後に、正しい答えが与えられていれば、あるいはまったく正しいコメントがなかったら誰でも正しいと思います(これも)。