嗨,有可能在MKMapView
上顯示多個用戶引腳在相同的位置Lat Long。看到此圖像貝婁: -如何刪除多個引腳的相同位置
在此以上圖像I可以是有兩個用戶定位銷,但由於相同的緯度長我可以看到只有一個銷。所以我的問題是,可以在同一位置顯示多個引腳。
如果我們不能將多個引腳放在同一位置,那麼可以在包含相同位置用戶信息的一個引腳上顯示多個AccessoryView
。
請指導我如何完成這項任務。
嗨,有可能在MKMapView
上顯示多個用戶引腳在相同的位置Lat Long。看到此圖像貝婁: -如何刪除多個引腳的相同位置
在此以上圖像I可以是有兩個用戶定位銷,但由於相同的緯度長我可以看到只有一個銷。所以我的問題是,可以在同一位置顯示多個引腳。
如果我們不能將多個引腳放在同一位置,那麼可以在包含相同位置用戶信息的一個引腳上顯示多個AccessoryView
。
請指導我如何完成這項任務。
您將需要創建一個自定義的MKAnnotation類來執行此操作。
在同一位置放置多個插針沒有任何意義。 相反,您可以在同一個針腳中顯示多個AccessoryView 爲此您需要創建UIView,列出您希望顯示的所有針腳標題。
[customAnnotationView.contentView addSubview:_contentView];
customAnnotationView.contentWidth = _contentView.frame.size.width;
customAnnotationView.contentHeight = _contentView.frame.size.height;
UIView的是你設計什麼,所以你可以創建
像這樣的東西可以幫助你。
你可以請提供示例代碼演示(如果你可以 –
什麼問題來了? – DivineDesert
我不想做什麼?可以弄清楚如何過濾相同的經緯度數據頭腦是真正的網格請gimi簡單的演示它的,如果你可以Plz –
首先篩選出唯一的位置記錄。假設你有10條記錄要顯示在地圖上,其中3條記錄具有相同的位置,其他2條記錄具有其他相同的位置,其餘5條記錄具有不同的位置。所以在地圖上,地圖上應該總共有1個(對於3個相同記錄)+1(對於2個相同記錄)+5 = 7個針腳。
現在,在方法
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
check current annotation has more than 1 records same as annotation location and based on that do
if (ary.count > 1)
{
[annotationView setCanShowCallout:NO];
}
else
{
[annotationView setCanShowCallout:YES];
}
然後在方法
- (無效)的MapView:(的MKMapView *)的MapView didSelectAnnotationView:(MKAnnotationView *)視圖
檢查視圖可以顯示的標註不。做如下
if (![view canShowCallout])
{
// means annotation has more than 1 records on same location
now get records of same location and display the way you want.
}
如果經度和緯度值相同,那麼如果我們放大mapview,那麼兩個引腳都放在同一位置,那麼我們可以看到這兩個引腳。 – Balu
雖然我點擊引腳,然後同時獲得HS等其他用戶的第二個註釋信息,當我再次點擊然後得到HS AccessoryView我想同時顯示。作爲一個引腳或者如果不能刪除兩個用戶的引腳,然後點擊然後顯示兩者的AccessoryView。這個問題bcz的用戶相同的位置 –
不,我不能看到我可以做動物園,但它完全相同的拉長: –