2016-04-18 64 views
1

我使用兩個ClusterManager,每個都有自己的項目。顯示/隱藏Google Maps v2集羣項目 - android

我需要切換(顯示/隱藏)這些項目,具體取決於它們屬於哪個ClusterManager。

:隱藏屬於羣集1.

我只使用羣集項目和不標記,因此不能做Marker.setVisibility(布爾值)的所有羣集項目的按鈕。

我試着將所有簇項保存到一個數組中,然後通過按鈕按下迭代它,但似乎你無法隱藏簇項。

非常感謝!

回答

0

基於此documentation,它只顯示如何添加ClusterItem

要使用標記羣集實用程序,您需要將標記作爲ClusterItem對象添加到ClusterManager。 ClusterManager將標記傳遞給算法,該算法將它們轉換爲一組簇。 ClusterRenderer通過添加和刪除集羣和單個標記來照顧渲染。 ClusterRenderer和算法是可插拔的,可以自定義。

用於隱藏ClusterItem。

我在這個SO question找到了一個解決方案,關於如何隱藏ClusterItem。

因爲ClusterManager沒有實現刪除元素。

你可以嘗試使用GridBasedAlgorithm(支持元素刪除):

clusterMng.setAlgorithm(new GridBasedAlgorithm<MyClusterItem>()); 

或者有更好的表現,與PreCachingAlgorithmDecorator包起來,如ClusterManager的默認操作:

clusterMng.setAlgorithm(new PreCachingAlgorithmDecorator<MyClusterItem>(new GridBasedAlgorithm<MyClusterItem>())); 
相關問題