我有一種情況,我在mapview上有一些自定義註釋。當選擇這些註解我經由ios mapview。關閉標註,但保留註釋選擇
didSelectAnnotationView
方法的圖像改變爲選擇狀態用爲[視圖setImage]一個電話,我還示出了標註氣泡。該標註具有附件視圖,該附件視圖在輕擊時添加新的子視圖並在其中包含更多信息。所有這些工作正常,除了當我點擊標註配件視圖時,我希望標註消失,但選定的圖像狀態保持不變。目前,我知道如何關閉該標註的唯一方法是通過
didDeselectAnnotationView
但是這也是在那裏我會設置圖像狀態是默認未選中的圖像。
有誰知道是否可以解除標註但只保留我的註釋選定狀態?
我已經得到了這個工作,通過設置布爾當detailView已被添加到決定是否刪除「活動」圖像。然而,當我選擇一個新的註釋時,它變得棘手,因爲我最終顯示了多個註釋,顯示了選定的狀態圖像。我試着循環遍歷所有註釋並將它們的圖像設置爲「關閉」狀態,但這似乎不起作用,並且我嘗試設置對當前所選註釋的引用並在其上更改圖像,但它再次沒有沒有工作。
實施例流程:
- 用戶選擇銷
- didSelectAnnotationView稱爲
- 引腳圖像改變爲「活動」和標註示
- 用戶敲擊在標註附屬視圖。
- BOOLEAN popOverShowing設置爲YES
- didDeselectAnnotationView被調用。作爲popOverShowing是YES的圖像不變化爲關斷狀態,但標註消失
- 用戶敲擊新註釋
- 酥料餅的消失和popOverShowing設置爲NO
- 新註釋被設定爲「有效」圖象
- 所有其他註釋應該得到恢復到關閉影像(這是什麼似乎並沒有發生)
我已經試過(我上面提到過我正在存儲一個參考)。問題是我在用AnnotationViews註釋的另一點覆蓋了這個引用,這就是 – TommyBs
這個混淆的地方。對不起,那另一個想法是,calloutView也是annotationView的一個子視圖。找到它然後將alpha設置爲0. – csk
我嘗試將canShowCallout設置爲NO,但它不起作用。 alpha是個好主意,可能更乾淨然後我現在正在做什麼(現在基於我上面的評論工作) – TommyBs