可以通过以下步骤实现在Android中使用osmdroid批量添加自定义标记和自定义弹窗,不同的标记,不同的弹窗样式:

  1. 引入osmdroid库

在项目的build.gradle文件中添加以下依赖库:

dependencies {
    implementation 'org.osmdroid:osmdroid-android:6.1.11'
    implementation 'org.osmdroid:osmdroid-mapsforge:6.1.11'
}
  1. 创建自定义标记和弹窗样式

可以在res/drawable文件夹中创建不同的标记图片,如marker1.png、marker2.png等。

可以在res/layout文件夹中创建不同的弹窗布局文件,如popup1.xml、popup2.xml等。

  1. 添加标记和弹窗

在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);

可以根据需要创建不同的标记和弹窗样式,并将它们添加到不同的图层中

android 使用osmdroid批量添加自定义标记和自定义弹窗 不同的标记 不同的弹窗样式

原文地址: https://www.cveoy.top/t/topic/hrHm 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录