引脚更正注释图像解析后端

时间:2016-07-31 10:25:20

标签: ios swift parse-platform mapkit mkannotationview

我已经设置了一个地图,其中从解析后端加载数据。在地图中,我想显示已保存在Assets文件夹中的图像。图像应该等于玩家名称。纬度和经度已经保存在Parse中。

正确显示播放器的位置但图像显示不正确,如果playerName列中的姓氏为Sachin,则所有播放器注释引脚的图像都相同。

我想申请如同playerName == annotation.title应该显示rahul的图像。

控制台打印:

26.6481591686873,77.1777485870544 Sachin

27.655116868732,77.17778705437 Rahul

28.6479996556687,77.1779252453013 Matt

28.6480628887157,77.1779590059193 Virat

28.1578689896,76.989079 Sachin

var playerName:String! 
override func viewDidLoad() {
    super.viewDidLoad()

query.findObjectsInBackgroundWithBlock { (posts, error) in

            if error == nil {
                let myPosts = posts! as [PFObject]
                for posts in myPosts {
                    let latitude12 = posts["playerLat"] as! Double
                    let longitude12 = posts["playerLong"] as! Double
                    let playName = posts["playerName"] as! String
                    self.playerName = posts["playerName"] as! String

                    print(latitude12,"," , longitude12, playerName)
                    let annotation = MKPointAnnotation()
                    //let customAnno = MKAnnotationView()

                    let locationCoordinate = CLLocationCoordinate2DMake(latitude12, longitude12)
                    annotation.coordinate = locationCoordinate
                    //customAnno.enabled = true
                    let anno = self.mapView.dequeueReusableAnnotationViewWithIdentifier("places")
                    if anno == nil {

                        // if annotation.title == "Sachin" {
                        //}
                        annotation.title = playerName
                        self.mapView.addAnnotations([annotation])

                    } else {
                        anno?.annotation = annotation
                    }
                }
            }
        }

 func mapView(mapView: MKMapView, viewForAnnotation annotation: MKAnnotation) -> MKAnnotationView? {

    let identifier = "customAnnotationView"
    let annotation1 = MKPointAnnotation()

    // custom image annotation
    var annotationView = mapView.dequeueReusableAnnotationViewWithIdentifier(identifier)
    if (annotationView == nil) {
        annotationView = MKAnnotationView(annotation: annotation, reuseIdentifier: identifier)
    }
    else {
        annotationView!.annotation = annotation
    }

        if annotation1.title == "Rahul" {
            annotationView!.image = UIImage(named: "Rahul")}
        else if annotation1.title == "Sachin"{

     annotationView!.image = UIImage(named: "Sachin")
        }
    return annotationView


}

我已尝试过所有代码,但所有玩家的图像都相同。

0 个答案:

没有答案