0

Iamはいくつかのマーカーを除いてすべてのマーカーをGoogleマップにクラスタリングする方法を探しています。これらのいくつかのマーカーは、時々異なる場合があります。たとえば、すべてのマーカーには、番号などの情報が含まれています。ユーザーがヨーロッパの地図を見ている場合、すべてのマーカーは、最も高い番号のマーカーを除いてクラスタ化されます。ユーザーが地図上で北アメリカに移動したり、全世界を見るためにズームアウトした場合、すべてのマーカーは、最も高い番号を含む3つのマーカーを除いて、再び/まだクラスタリングされます。これらの3つのマーカーは、もちろん、異なるマーカーであり得る。例外を含むマーカーをクラスタリングする(Googleマップandroid API)

どこから始めるべきか、どのように考えているかは大いに感謝しています。それも可能ですか?

答えて

1

はい、可能です。

マーカーをクラスタ化するには、ClusterManagermClusterManager.addItem(myClusterizableItem);を明示的に追加する必要があります(the documentationを参照)。

ClusterManagerにすべてのマーカーを追加し、mMap.addMarkerメソッドを使用して通常の方法でいくつかのマーカー(クラスター化したくないマーカー)を作成するだけです。

別の方法として、特定の条件に基づいてマーカーをクラスター化し、クラスター化しないマーカーを除外するカスタムClusterRendererを書くことができます。

+0

thx!これは、ユーザーの動作のために例外(クラスタ化されていないマーカーを意味する)が変化している場合にも機能しますか?つまり、ユーザーがマーカーを「好き」にしている場合、そのマーカーは、そのアプリケーションを使用するすべてのユーザーのためにクラスタ化されてはなりません。 –

+0

はい、ユーザーがマーカーを「好き」にすると、サーバーに伝える必要があります。次の要求には、いくつかのマーカーがクラスタ化可能であり、その他のものは非クラスタ化可能であり、クライアントはそれに基づいてマーカーをクラスター化する – antonio

関連する問題