##開源組件名稱android
地圖點聚合git
##開源組件說明及使用場景github
主要解決地圖中點要素不少時候的表示困難的問題。點聚合能夠用少許的點或圖標來表示地圖中的全部點,讓地圖顯示更清晰明朗。api
##開源組件所使用的技術ide
本工程爲基於高德地圖Android SDK進行封裝,實現了Marker聚合效果的例子網站
##Git代碼託管地址ui
http://git.oschina.net/lbs/Android_ClusterMarkerthis
##開源組件截圖以及安裝二維碼.net
開源組件應用下載-Androidcode
###其餘資源連接:
###下載資源:
<pre><code> //初始化 ClusterOverlay clusterOverlay = new ClusterOverlay(mAMap,dp2px(getApplicationContext(), clusterRadius),getApplicationContext()); for (int i = 0; i < ConstantUtils.latlngs.length; i++) { RegionItem regionItem = new RegionItem(ConstantUtils.latlngs[i], ConstantUtils.names[i]); clusterOverlay.addClusterItem(regionItem); } </code> </pre>
<pre><code> ////設置自定義繪製接口和聚合點點擊接口 clusterOverlay.setClusterRenderer(this); clusterOverlay.setOnClusterClickListener(this); </code> </pre>
<pre><code> public Drawable getDrawAble(int clusterNum) { //根據聚合點數目不同對聚合點進行不一樣樣式的渲染 int radius = dp2px(getApplicationContext(), clusterRadius); if (clusterNum == 1) { return getApplication().getResources().getDrawable( R.drawable.icon_openmap_mark); } else if (clusterNum < 5) { BitmapDrawable drawable = new BitmapDrawable(drawCircle(radius, Color.argb(159, 210, 154, 6))); return drawable; } else if (clusterNum < 10) { BitmapDrawable drawable = new BitmapDrawable(drawCircle(radius, Color.argb(199, 217, 114, 0))); return drawable; } else { BitmapDrawable drawable = new BitmapDrawable(drawCircle(radius, Color.argb(235, 215, 66, 2))); return drawable; } } </pre></code>
<pre><code> public void onClick(Marker marker, List<ClusterItem> clusterItems) { String content = ""; for (ClusterItem clusterItem : clusterItems) { RegionItem item = (RegionItem) clusterItem; content += item.getTitle() + " "; } infoTextView.setText(content); } </pre></code>