(三) 加載基礎(chǔ)地圖
地圖上的監(jiān)聽事件
1. 地圖加載完成監(jiān)聽
mapView.addDrawStatusChangedListener {
Log.e("test", it.drawStatus.name) // COMPLETED 地圖加載完成
}
2. 地圖縮放基本監(jiān)聽
mapView.addMapScaleChangedListener {
//自定義比例尺写隶,在這里跟隨地圖變化
}
3. 地圖旋轉(zhuǎn)監(jiān)聽
mapView.addMapRotationChangedListener {
//自定義指南針,可以在這里設(shè)置蚂斤,跟隨地圖旋轉(zhuǎn)
}
4. 圖層狀態(tài)變化監(jiān)聽
mapView.addLayerViewStateChangedListener {
//圖層超出或進(jìn)入可見范圍,或者控制可見不可見時(shí)調(diào)用
}
5. 點(diǎn)擊事件監(jiān)聽
mapView.onTouchListener = object : DefaultMapViewOnTouchListener(this, mapView) {
override fun onSingleTapConfirmed(e: MotionEvent): Boolean {
//單擊事件
return super.onSingleTapConfirmed(e)
}
}
地圖的一些操作
1. 移動(dòng)到某點(diǎn)為中心
(中心點(diǎn)坐標(biāo)悍引,比例)
mapView.setViewpointCenterAsync(Point(1.2957313863797672E7, 4852689.604022887), 50000.0)
2. 移動(dòng)到某個(gè)范圍
val envelope = Envelope(
1.2948833926058898E7,
4349896.492981933,
1.3109843192109745E7,
4447340.642539789,
mapView.spatialReference
)
mapView.setViewpointGeometryAsync(envelope)
3. 設(shè)置旋轉(zhuǎn)角度
mapView.setViewpointRotationAsync(0.0)
4. 設(shè)置縮放比例
//設(shè)置比例
mapView.setViewpointScaleAsync(10000)
//縮小
mapView.setViewpointScaleAsync(mapView.mapScale * 2)
//放大
mapView.setViewpointScaleAsync(mapView.mapScale * 0.5)
(五) 繪制點(diǎn)家肯、線倦挂、面畸颅、文字、圖片
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者