2013-05-29 45 views
9

我試圖放置標記,但是當我這樣做時,此標記放置在之前(以及其他一些標記)之前的某些標記後面。我想將它設置在所有標記上,但是我沒有找到任何屬性(如z-index)來實現這一點。在Google Maps SDK中的所有其他標記上設置一個標記iOS

這是我設置的是停留在別人後面標記的代碼部分:

GMSMarker *marker = [[GMSMarker alloc] init]; 
marker.animated=YES; 
marker.position = CLLocationCoordinate2DMake(lat, lon); 
marker.map = mapView_; 

,這是結果:

Green marker is placed behind some blue markers and over other blue markers

是否有任何財產或方式將綠色標記放在所有藍色標記上?我正在使用Google Maps SDK 1.3.0版。

回答

26

現在通過在版本1.4.0中添加GMSOverlay類的zIndex屬性支持此功能。來自release notes

在所有疊加上添加了zIndex屬性。 Z-索引分兩組計算:GMSMarker和所有其他覆蓋。

只需在您的標記上設置高zIndex以使其在所有其他上繪製。如前所述由酒店文檔here

較高zIndex值將覆蓋較低zIndex值板塊層和疊加的頂部繪製。

用於標記的默認zIndex0(至少在目前的SDK版本 - 我還沒有看到它的記載,但它很容易測試和確認),所以如果你不設置zIndex爲大多數標記和一個要放置在其他標記之上的所有對象,只需要:

yourGmsMarker.zIndex = 1; 
+0

如果要將標記放到另一個標記上,請將以前的zIndex置於1之下(比如0.8) ,然後是1.0 –

相關問題