关注分享主机优惠活动
国内外VPS云服务器

Leaflet 在 Android 上的工作原理

要在 Android 设备上运行 Leaflet,您必须执行以下步骤。

  1. 安装 Java。 开发套件 (JDK):访问 https://www.oracle.com/java/technologies/javase-jdk14-downloads.html 在您的 Android 设备上下载并安装适当的 JDK 版本。

  2. 安装 Android Studio:访问 https://developer.android.com/studio 下载 Android Studio 并安装。 这是官方的Android开发环境,包括必要的开发工具和库。

  3. 创建新的 Android 项目:打开 Android Studio,单击“启动新的 Android Studio 项目”,然后按照向导进行创建。 新项目。 选择空活动模板并单击下一步。 输入您的应用程序名称、公司域、项目位置,然后单击完成。

  4. 为 Leaflet 添加依赖项:将以下依赖项添加到项目的 build.gradle 文件中:添加。

依赖项{
实现'组织.apache.leaflet:leaflet-android:1.7.1'
}
  1. 同步 Gradle:单击 Android Studio 工具栏上的“将项目与 Gradle 文件同步”按钮,将新添加的依赖项同步到您的项目。

  2. 将地图添加到布局文件中。 将 添加到 activity_main.xml 文件中。 MapView 控件:

< com.mapbox.geojson.FeatureCollection
 xmlns:android=“http://schemas.android.com/apk/res/android”
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height=“match_parent”
 工具:上下文=".MainActivity">

 <com.mapbox.geojson.Point
 android:id="@+id/point"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_gravity="center"
 android:clickable="true"
 android:background="?android:attr/selectableItemBackgroundBorderless"
 android:padding="12dp"
 android:scaleType="centerCrop"
 android:src="@drawable/ic_launcher_background" />

 <org.osmdroid.widget.MapView
 android:id="@+id/mapView" 
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:clickable="true"
 android:background="#00000000" />

</com.mapbox.geojson.FeatureCollection>
  1. MainActivity.java文件中,初始化地图并设置中心点和缩放级别。
导入 androidx.appcompat.app.AppCompatActivity;
导入android。os.Bundle;
导入 android.view.View;
导入 android.widget。    Toast;

导入 com.mapbox.geojson.FeatureCollection;
导入 com .mapbox.geojson.Point;
导入 com.mapbox.maps.extension.style.layers. generated.symbolLayer;
导入 com.mapbox.maps.extension.style.sources. generated.geoJsonSource;
导入 com.mapbox.maps.extension .style.style;
导入 com.mapbox.maps.plugin.annotation. generated.createPointAnnotationOptions;
导入 com.mapbox.maps.plugin.annotation. generated.createPoin。tAnnotationManager;

公共  MainActivity  扩展 AppCompatActivity {

 私有 MapView mapView;

 @Override
 受保护 void onCreate(捆绑 SavedInstanceState) { 
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);

 mapView = findViewById(R.id. mapView);
 mapView.onCreate(savedInstance)eState);
 mapView.getMapAsync(new OnMapReadyCallback() {
 @Override
 公共 void onMapReady(@NonNull MapboxMap mapboxMap) {
 mapboxMap.addOnMapClickListener(new MapboxMap.OnMapClickListener() {
 @Override
 公共 布尔 onMapClick(@NonNull LatLng 点) {
 Toast.makeText(MainActivity.this, "点击的地图:" + point.getLatitude() + ", " + point.getLongitude(), Toast.LENGTH_SHORT).show();
 返回 true;
 }
 });

 //向地图添加符号图层 
 symbolLayer symbolLayer =symbolLayer from("源 ID")
 .withProperties(
 property("图标图像", "icon-name")
 );

 // 添加geoJSON源到地图 
 geoJsonSource geoJsonSource = geoJsonSource。 ("https://api.example.com/geojson");

 //设置初始地图样式
 mapboxMap.loadStyle(style(styleUri = Style.MAPBOX_STREETS));

 // 添加符号图层和geoJSON源到地图
 mapboxMap.addLayer(symbolLayer);
 mapboxMap.addSource(geoJsonSource);

 // 创建点注释并添加到地图
   = Point.fromLngLat(12.971598, 77.594566);
 createPointAnnotationOptions 选项 = createPointAnnotationOptions().withPosition(point).withIconImage("图标名称&quot););
 createPointAnnotationManager(mapboxMap).create(options);
 }
 });
 }

  @Override
 受保护 void  onResume() {
 超级.onResume();
 mapView. onResume();
 }

 @Override
 受保护 void onPause() {
 超级.onPause();
 mapView.onPause();
 }

 @Override
 受保护 无效 onDestroy() {
 超级.onDestroy(); 
 mapView.onDestroy();
 }

 @Override
 受保护 void onSaveInstanceState(@NonNull 捆绑 outState) {
 超级.onSaveInstanceState(outState);
 mapView.onSaveInstanceState( outState);
 }
}
  1. 运行应用程序:连接 Androidd 使用您的设备或 Android 模拟器,单击 Android Studio 工具栏上的运行按钮来运行应用程序。

您现在可以在 Android 设备上查看 Leaflet 地图并与之交互。 请注意,本示例使用 Mapbox 地图样式,但您可以根据需要将其替换为其他地图样式或自定义样式。

以上内容来自互联网,不代表本站全部观点。 欢迎关注:zhujipindao.com

未经允许不得转载:主机频道 » Leaflet 在 Android 上的工作原理

评论 抢沙发

评论前必须登录!