android 使用osmdroid批量添加自定义标记和自定义弹窗 不同的标记 不同的弹窗样式
可以通过以下步骤实现在Android中使用osmdroid批量添加自定义标记和自定义弹窗,不同的标记,不同的弹窗样式:
- 引入osmdroid库
在项目的build.gradle文件中添加以下依赖库:
dependencies {
implementation 'org.osmdroid:osmdroid-android:6.1.11'
implementation 'org.osmdroid:osmdroid-mapsforge:6.1.11'
}
- 创建自定义标记和弹窗样式
可以在res/drawable文件夹中创建不同的标记图片,如marker1.png、marker2.png等。
可以在res/layout文件夹中创建不同的弹窗布局文件,如popup1.xml、popup2.xml等。
- 添加标记和弹窗
在Activity或Fragment中,可以通过以下代码添加标记和弹窗:
// 创建标记
Drawable marker = getResources().getDrawable(R.drawable.marker1);
GeoPoint point = new GeoPoint(latitude, longitude);
OverlayItem overlayItem = new OverlayItem("Title", "Description", point);
overlayItem.setMarker(marker);
// 创建弹窗
View popup = getLayoutInflater().inflate(R.layout.popup1, null);
MarkerInfoWindow infoWindow = new MarkerInfoWindow(R.layout.popup1, mapView);
overlayItem.setInfoWindow(infoWindow);
// 添加标记和弹窗到图层
List<Overlay> overlays = mapView.getOverlays();
ItemizedIconOverlay<OverlayItem> markerOverlay = new ItemizedIconOverlay<OverlayItem>(overlayItems, null, null);
overlays.add(markerOverlay);
可以根据需要创建不同的标记和弹窗样式,并将它们添加到不同的图层中
原文地址: https://www.cveoy.top/t/topic/hrHm 著作权归作者所有。请勿转载和采集!