2017-05-03 102 views
0

夥計們,我一直在做這個項目有關谷歌的地方和地圖apis。 我想要做的是搜索最近的餐館。但我不能在地圖上放置多個圈子。在地圖上爲用戶的當前位置顯示一個標記。這是代碼。谷歌地圖多個圈子

func setUpMarkersForLibraries(locations: [CLLocationCoordinate2D]){ 
print("Setting up Markers") 
var i = 0 
for l in locations{ 
    let circleCenter = l 
    let circ = GMSCircle(position: circleCenter, radius: 30) 

    circ.fillColor = UIColor(red: 0, green: 0.89, blue: 0, alpha: 0.8) 
    circ.strokeColor = .black 
    circ.strokeWidth = 5 
    circ.title = "\(i)" 
    circ.map = mapView 

} 
} 

我通過了我開始使用谷歌Places API的網絡服務的所有位置的座標。所以總共有20個地點,所以應該有20個標記。但沒有。請讓我知道我做錯了什麼。謝謝。

+0

你是否將你的mapview添加到你的視圖? self.view = mapView –

+0

是的,我在我的viewDidLoad方法中這樣做。 –

+0

@AnonyTaylor可能是什麼問題? –

回答

0

這個函數看起來不錯。

這可能是標記,一旦繪製到地圖不更新。不同於用戶的位置。圈子最有可能被添加。

前/標記過程中添加到地圖調用你的方法...對於MapKit的功能,我會用創建一個自定義註釋/標記是:

MapView類(_ MapView類:的MKMapView,viewFor註釋: MKAnnotation) - > MKAnnotationView?

這比僅僅向座標添加一個圓圈更好,因爲它成爲了標記的屬性,而不是地圖疊加。

快速查看文檔還表明,GMSMarker屬性iconView也可用於添加自定義視圖。

希望這有助於快樂編碼。

+0

我沒有使用MapKit。還有什麼意思是「在你的標記中加入你的方法/在標記期間添加到地圖中 –

+0

在將製造商設置爲map之前調用你的setUpMarkersForLibraries():marker.map = mapView,我假設你正在迭代一個數組。 – RLoniello

+0

如果您遍歷數組我想你可以使用類似這樣的東西 '變種庫:[GMSMarker] = [] 在圖書館標記{ //使用的UIView 設圓創建一個圓=的UIView(幀:的CGRect(X:0.0,Y:0.0,寬度:30.0,高度:30.0)) circle.layer.cornerRadius = 50 circle.backgroundColor = UIColor.blue circle.alpha = 0.8 circle.clipsToBounds = Ť後悔 //添加圈到ICONVIEW markers.iconView =圓 //添加庫映射 marker.map = MapView的 }' – RLoniello