[6.7.0][Feat]高精地图和高德地图切换动效

This commit is contained in:
chenfufeng
2024-09-23 14:40:12 +08:00
parent bf28316b3f
commit 3d9640c8a6
8 changed files with 808 additions and 165 deletions

View File

@@ -19,6 +19,7 @@ import com.amap.api.maps.CameraUpdate
import com.amap.api.maps.CameraUpdateFactory
import com.amap.api.maps.CoordinateConverter
import com.amap.api.maps.TextureMapView
import com.amap.api.maps.model.AMapGestureListener
import com.amap.api.maps.model.BitmapDescriptor
import com.amap.api.maps.model.BitmapDescriptorFactory
import com.amap.api.maps.model.CustomMapStyleOptions
@@ -205,6 +206,7 @@ class TravelRealityView @JvmOverloads constructor(
private var testTime = 0L
private var listener: OnDrawListener? = null
private var gestureListener: OnGestureListener? = null
init {
try {
@@ -272,6 +274,10 @@ class TravelRealityView @JvmOverloads constructor(
this.listener = listener
}
fun setOnGestureListener(listener: OnGestureListener) {
this.gestureListener = listener
}
/**
* 清除所有Marker和Polyline
*/
@@ -366,6 +372,32 @@ class TravelRealityView @JvmOverloads constructor(
mAMap?.uiSettings?.isZoomControlsEnabled = false
// mAMap?.animateCamera(CameraUpdateFactory.changeTilt(30f))
}
mAMap?.setAMapGestureListener(object : AMapGestureListener {
override fun onDoubleTap(p0: Float, p1: Float) {
}
override fun onSingleTap(p0: Float, p1: Float) {
gestureListener?.onSingleTap(p0, p1)
}
override fun onFling(p0: Float, p1: Float) {
}
override fun onScroll(p0: Float, p1: Float) {
}
override fun onLongPress(p0: Float, p1: Float) {
}
override fun onDown(p0: Float, p1: Float) {
}
override fun onUp(p0: Float, p1: Float) {
}
override fun onMapStable() {
}
})
}
override fun onVisibilityChanged(changedView: View, visibility: Int) {
@@ -1285,6 +1317,10 @@ class TravelRealityView @JvmOverloads constructor(
fun onDraw(eventList: List<EventDrawBean>, isEvent: Boolean)
}
interface OnGestureListener {
fun onSingleTap(lng: Float, lat: Float)
}
private inner class NonFrequentHandler(looper: Looper) : Handler(looper) {
@Suppress("UNCHECKED_CAST")
override fun handleMessage(msg: Message) {