Android高德地图之多marker点 多个infowindow

地图集成代码就省略,直接整主要代码:

for (int i = 0; i < marketList.size(); i++) {

                   aMap.moveCamera(CameraUpdateFactory.changeLatLng(new LatLng(marketList.get(i).getLatitude(),//设置纬度

                    marketList.get(i).getLongitude())));

            marker = aMap.addMarker(new MarkerOptions().anchor(1.5f, 3.5f)

                           .position(new LatLng(marketList.get(i).getLatitude(),//设置纬度

                            marketList.get(i).getLongitude()))//设置经度

                            .title(marketList.get(i).getTitle())//设置标题

                            .snippet(marketList.get(i).getContent())//设置内容

                            // .setFlat(true) // 将Marker设置为贴地显示,可以双指下拉地图查看效果

                            .icon(BitmapDescriptorFactory.fromBitmap(BitmapFactory

                            .decodeResource(mContext.getResources(), R.mipmap.poi_marker_pressed)))

                            .draggable(true) //设置Marker可拖动

                            .icon(BitmapDescriptorFactory.fromResource(R.mipmap.ic_launcher)));

}

        marker.showInfoWindow();


多个infowindow算是投机取巧 没有找到合适的方法 
for (int i = 0; i < marketList.size(); i++) {

            final LocationMarketBean locationMarketBean = marketList.get(i);

             markerOption = new MarkerOptions().icon(BitmapDescriptorFactory

                                       .fromView(getBitmapView(LocationMarkerInfoWindowsActivity.this, locationMarketBean)));

            markerOption.position(new LatLng(locationMarketBean.getLatitude(), locationMarketBean.getLongitude()));

            markerOption.setFlat(true);

            markerOption.draggable(false);

            marker = aMap.addMarker(markerOption);

            markerOptionlst.add(markerOption);

        }

        markersOnListen = aMap.addMarkers(markerOptionlst, true);

        aMap.setOnMarkerClickListener(marker -> {

            for (int i = 0; i < markersOnListen.size(); i++) {

                if (marker.equals(markersOnListen.get(i))) {

                    Toast.makeText(LocationMarkerInfoWindowsActivity.this, marketList.get(i).getTitle(), Toast.LENGTH_SHORT).show();

                }

            }

            return false;

        });

技术有限,只提供思路,不喜勿喷,忘各位大佬手下留情。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容