swift4ユーザーが地図上をドラッグするまでjsonからの注釈は表示されません

ヘッシュ

地図上に注釈を表示するのに問題があります。マップを移動またはドラッグしたときにのみ表示されます。

私はyoutubeのチュートリアルとcシャープな質問の1つに従おうとしました

1つの助けを借りることができます..ここにコードがあります

ここで、アノテーションのクラスを作成しました

  class customPin: NSObject, MKAnnotation {
    var coordinate: CLLocationCoordinate2D
    var title: String?
    var subtitle: String?

    init(pinTitle:String, pinSubTitle:String, location:CLLocationCoordinate2D) {
        self.title = pinTitle
        self.subtitle = pinSubTitle
        self.coordinate = location
    }}

    class ViewController: UIViewController, CLLocationManagerDelegate {

    @IBOutlet weak var mapView: MKMapView!

     var locationManager = CLLocationManager()

    override func viewDidLoad() {
        super.viewDidLoad()

        mapView.register(CustomAnnotationView.self, forAnnotationViewWithReuseIdentifier: MKMapViewDefaultAnnotationViewReuseIdentifier)

        self.locationManager.requestWhenInUseAuthorization()


        //json show the list of the parks


pipiCanList()

     //show location Barcelona
    let location = CLLocationCoordinate2D(latitude: 41.3851   , longitude:2.1734)
    let region = MKCoordinateRegion(center: location, span: MKCoordinateSpan(latitudeDelta: 0.05, longitudeDelta: 0.05))

    self.mapView.setRegion(region, animated: true)
    self.mapView.delegate = self

}

json情報を取得する

 func pipiCanList(){

        let url = "http://bluewave.lk/Apps/pipiCan/Api/read.php";
        let urlObj = URL(string:url);

        URLSession.shared.dataTask(with: urlObj!) {(data, response, error) in
            do{
                let pipiCans = try JSONDecoder().decode([pipiCanDBList].self, from: data!)

                for pipiCan in pipiCans{

                    let Latitude = (pipiCan.ParkLatitude! as NSString).doubleValue
                    let Longitude = (pipiCan.ParkLongitude! as NSString).doubleValue
                    let  location = CLLocationCoordinate2D(latitude: Latitude, longitude: Longitude)

                    //add to
                    let pin = customPin(pinTitle: pipiCan.ParkName!, pinSubTitle: pipiCan.Area!, location:  location)
                    self.mapView.addAnnotation(pin)

                  }
            } catch{

                print ("Error - cannot get list")

            }
            }.resume()


    }
}    
Sh_Khan

あなたが必要です

DispatchQueue.main.async { 
    let pin = customPin(pinTitle: pipiCan.ParkName!, pinSubTitle: pipiCan.Area!, location:  location)
    self.mapView.addAnnotation(pin)
}

URLSession.shared.dataTaskコールバックは、バックグラウンドスレッドであり、あなたがアクセスしなければならないのUIKitのような要素をmapViewあなたがも行うことができ、メインスレッドで

self.mapView.showAnnotations(self.mapView.annotations, animated: true)

追加されたすべての注釈を表示するforループの後、ここで領域を設定することにも注意してください

 let location = CLLocationCoordinate2D(latitude: 41.3851   , longitude:2.1734)
let region = MKCoordinateRegion(center: location, span: MKCoordinateSpan(latitudeDelta: 0.05, longitudeDelta: 0.05))

応答が上記の領域よりも遠い場所の値である可能性があること

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

MKMapViewですべての注釈がユーザーに表示されるわけではありません

分類Dev

iOS Swift MapKitは、ユーザーが注釈をドラッグ可能にしますか?

分類Dev

ユーザーの場所を地図上に表示することはできません

分類Dev

iOSアプリが拒否されました-アプリは地図上に近くのユーザーの場所を表示できますが、必要なプライバシー対策が整っていません

分類Dev

一部の(すべてではありません)ユーザーは、Google Playからアプリをダウンロードすると、「パッケージファイルが正しく署名されていません」と表示されます。

分類Dev

スターゲイザーがdata.frameデータをラテックスコードとして解釈することはバグを構成しますか、それともこれは意図されたものですか?

分類Dev

Django-ユーザーは画像をアップロードできますが、画像が表示されません-HTMLの問題ですか?(初心者ヘルプ)

分類Dev

MKPointAnnotationタイトルが表示されず、注釈をドラッグできません

分類Dev

Javaでオーバーライドされたメソッドからの注釈を取得する方法は?

分類Dev

Pythonライブラリ「PDFrw」は、フィールドをクリックするまで表示されないままの注釈に書き込みます

分類Dev

マップをユーザーの場所までスクロールするか、マップ上の注釈をクリックすると、コンテナビューがストーリーボードで設定された場所に戻ります。

分類Dev

APIからユーザーに大きなblobをダウンロードすると、完了するまでダウンロードが表示されません

分類Dev

Excelスプレッドシートのデータから電子メールを生成しようとすると、コンパイルエラー「ユーザー定義型が定義されていません」が表示されます

分類Dev

swift4のテキストフィールドをタップすると表示を作成できません

分類Dev

swift、mapView、注釈ビューはタップしても表示されません

分類Dev

リーフレットとラスターを備えた光沢のあるアプリでは地図がレンダリングされません

分類Dev

拡張機能からの宣言は、Swift4ではまだオーバーライドできません

分類Dev

登録フローでユーザーが認証されているにもかかわらず、Firebaseの「ユーザーが承認されていません」エラーを修正するにはどうすればよいですか?

分類Dev

AppAuthを使用してswift4で認証する追加のアラートが表示されます

分類Dev

.NETCore PasswordHasher.HashPasswordはTUserユーザーを使用しませんが、なぜメソッドシグネチャに含まれているのですか?

分類Dev

Spring Bootと注釈でViewResolverを構成すると、URIエラーのあるHTTPリクエストのマッピングが見つかりません

分類Dev

Hibernateエラー-QuerySyntaxException:ユーザーがマッピングされていません[ユーザーから]

分類Dev

ハブとノードの両方がDockerから使用されている場合、ブラウザーから表示したときにSeleniumグリッドが実行されていることを確認できません

分類Dev

セルは、最小限のスクロールまたはタップするまでテーブルビューに表示されません(注:バックグラウンドスレッドでは何も起こりません)

分類Dev

ダガーは、他の注釈プロセッサによって生成されたクラスを見つけることができません

分類Dev

ユーザーの場所の注釈を除くすべての注釈をMKMapViewから削除するにはどうすればよいですか?

分類Dev

パスワードを更新していないのに、ユーザーの更新中に「パスワードを空白にすることはできません」というメッセージが表示されるのはなぜですか(Rails4の「has_secure_password」)。

分類Dev

ユーザーアドレス、ブラウザ、または時間を保存できません常に構文エラーが表示されます

分類Dev

Matplotlib-プロットを保存すると、注釈は表示されません

Related 関連記事

  1. 1

    MKMapViewですべての注釈がユーザーに表示されるわけではありません

  2. 2

    iOS Swift MapKitは、ユーザーが注釈をドラッグ可能にしますか?

  3. 3

    ユーザーの場所を地図上に表示することはできません

  4. 4

    iOSアプリが拒否されました-アプリは地図上に近くのユーザーの場所を表示できますが、必要なプライバシー対策が整っていません

  5. 5

    一部の(すべてではありません)ユーザーは、Google Playからアプリをダウンロードすると、「パッケージファイルが正しく署名されていません」と表示されます。

  6. 6

    スターゲイザーがdata.frameデータをラテックスコードとして解釈することはバグを構成しますか、それともこれは意図されたものですか?

  7. 7

    Django-ユーザーは画像をアップロードできますが、画像が表示されません-HTMLの問題ですか?(初心者ヘルプ)

  8. 8

    MKPointAnnotationタイトルが表示されず、注釈をドラッグできません

  9. 9

    Javaでオーバーライドされたメソッドからの注釈を取得する方法は?

  10. 10

    Pythonライブラリ「PDFrw」は、フィールドをクリックするまで表示されないままの注釈に書き込みます

  11. 11

    マップをユーザーの場所までスクロールするか、マップ上の注釈をクリックすると、コンテナビューがストーリーボードで設定された場所に戻ります。

  12. 12

    APIからユーザーに大きなblobをダウンロードすると、完了するまでダウンロードが表示されません

  13. 13

    Excelスプレッドシートのデータから電子メールを生成しようとすると、コンパイルエラー「ユーザー定義型が定義されていません」が表示されます

  14. 14

    swift4のテキストフィールドをタップすると表示を作成できません

  15. 15

    swift、mapView、注釈ビューはタップしても表示されません

  16. 16

    リーフレットとラスターを備えた光沢のあるアプリでは地図がレンダリングされません

  17. 17

    拡張機能からの宣言は、Swift4ではまだオーバーライドできません

  18. 18

    登録フローでユーザーが認証されているにもかかわらず、Firebaseの「ユーザーが承認されていません」エラーを修正するにはどうすればよいですか?

  19. 19

    AppAuthを使用してswift4で認証する追加のアラートが表示されます

  20. 20

    .NETCore PasswordHasher.HashPasswordはTUserユーザーを使用しませんが、なぜメソッドシグネチャに含まれているのですか?

  21. 21

    Spring Bootと注釈でViewResolverを構成すると、URIエラーのあるHTTPリクエストのマッピングが見つかりません

  22. 22

    Hibernateエラー-QuerySyntaxException:ユーザーがマッピングされていません[ユーザーから]

  23. 23

    ハブとノードの両方がDockerから使用されている場合、ブラウザーから表示したときにSeleniumグリッドが実行されていることを確認できません

  24. 24

    セルは、最小限のスクロールまたはタップするまでテーブルビューに表示されません(注:バックグラウンドスレッドでは何も起こりません)

  25. 25

    ダガーは、他の注釈プロセッサによって生成されたクラスを見つけることができません

  26. 26

    ユーザーの場所の注釈を除くすべての注釈をMKMapViewから削除するにはどうすればよいですか?

  27. 27

    パスワードを更新していないのに、ユーザーの更新中に「パスワードを空白にすることはできません」というメッセージが表示されるのはなぜですか(Rails4の「has_secure_password」)。

  28. 28

    ユーザーアドレス、ブラウザ、または時間を保存できません常に構文エラーが表示されます

  29. 29

    Matplotlib-プロットを保存すると、注釈は表示されません

ホットタグ

アーカイブ