上篇介紹了開發(fā)環(huán)境的配置尉咕,現(xiàn)在寫個最基本的用法
- 布局文件中使用
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.esri.arcgisruntime.mapping.view.MapView
android:id="@+id/mapView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
- 代碼中
class TestActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_test)
/**
* 地圖類型
* 中心點緯度
* 中心點經(jīng)度
* 地圖顯示級別
*/
val arcGISMap = ArcGISMap(Basemap.Type.TOPOGRAPHIC, 39.914271, 116.405419, 10)
mapView.map = arcGISMap
}
override fun onPause() {
super.onPause()
mapView.pause()
}
override fun onResume() {
super.onResume()
mapView.resume()
}
override fun onDestroy() {
super.onDestroy()
mapView.dispose()
}
}
運行需要網(wǎng)絡(luò)權(quán)限
運行效果
可以看到叠蝇,底圖已經(jīng)加載出來了,這里加載的是Arcgis內(nèi)置的一些底圖
去除上方水印和下方logo
//去除水印
ArcGISRuntimeEnvironment
.setLicense("runtimelite,1000,rud4449636536,none,NKMFA0PL4S0DRJE15166")
//去除logo
mapView.isAttributionTextVisible = false
Basemap.Type 的類型可以查看官方api提供的地圖類型介紹 傳送門
Arcgis內(nèi)置了一些可以直接使用的地圖
val arcGISMap1 = ArcGISMap(Basemap.createImagery())
val arcGISMap2 = ArcGISMap(Basemap.createStreetsVector())
val arcGISMap3 = ArcGISMap(Basemap.createTopographic())
***
//初始化可見區(qū)域
val targetExtent = Envelope(
-13639984.0, 4537387.0, -13606734.0, 4558866.0,
SpatialReferences.getWebMercator()
)
arcGISMap3.initialViewpoint = Viewpoint(targetExtent)
mapView.map = arcGISMap3