2016-07-06 10 views
0

サーバのデータにマーカーの座標があり、そのデータは動的です。次に、私はそれらをGoogleマップに追加する必要があります。しかし、5秒後(私はタイマーがある)データが変更され、マーカーでデータを変更する必要があります。 My機能は:GoogleマップSDK iOSでダイナミックマーカーの座標を変更するにはどうすればよいですか?

//self.markers.map = nil 
self.mapView.clear() 
for temp_cord in double_arr { 
    self.markers = GMSMarker(position: CLLocationCoordinate2D(latitude: Double(temp_cord[1])!, longitude: Double(temp_cord[2])!)) 
    self.markers.map = self.mapView 
} 

私はself.markers.map = nil私のマーカーが重複しますが削除されませんコメントを解除した場合。だから、私のマーカーは車のように見え、次にGoogleマップ上に移動します。

答えて

1

新しいピンをプロットする前に、すべてのピンを削除する必要があります。マップからすべてのピンを削除するには、次のコードを使用します。それは私

NSObjectのクラス

import Foundation 
class LocationVO: NSObject { 
var L_Latitude: String 
var L_Longitude: String 
var L_Id: String 
var L_PlaceId: String 
var L_Reference: String 
var L_Name: String 
} 

のViewController

func plotPins() { 
    mapView_.clear() 
    if isCurrentLoc { 
     if marker_ == nil { 
      marker_ = GMSMarker() 
     } 
    } 
    else { 
     marker_ = GMSMarker() 
     marker_.userData = locationVO 
    } 
    var target: CLLocationCoordinate2D = CLLocationCoordinate2DMake(locationVO.L_Latitude, locationVO.L_Longitude) 
    marker_.position = target 
    marker_.title = "Current:" 
    var coord: String = "\(latitude) \(longitude)" 
    marker_.appearAnimation = kGMSMarkerAnimationPop 
    DLog("%f %f", latitude, longitude) 
    // marker.icon = [UIImage imageNamed:@"marker"]; 
    if isCurrentLoc { 
     marker_.opacity = 0.0 
    } 
    marker_.snippet = (coord) 
    marker_.map = mapView_ 
} 

感謝のために正常に動作し、それが役に立てば幸い!

+0

あなたのコードはApple Mapsで動作していると思いますが、私はGoogle Mapsで同じ機能を作成しようとしています –

関連する問題