地图模块适配

This commit is contained in:
jiaguofeng
2023-08-17 16:35:57 +08:00
parent f7a1ebc51b
commit e2bcf69b41
76 changed files with 689 additions and 530 deletions

View File

@@ -7,7 +7,6 @@ import com.zhidaoauto.map.sdk.inner.CompileConfig;
import com.zhidaoauto.map.sdk.inner.road.RoadResultController;
public class MapBox {
private static final String TAG = "MapBox";
static {
System.loadLibrary("map");
}

View File

@@ -1,4 +1,4 @@
//package com.autonavi.nge.dm;
package com.autonavi.nge.dm;//package com.autonavi.nge.dm;
//
//import android.os.RemoteException;
//import android.util.Log;

View File

@@ -1,58 +1,58 @@
//package com.autonavi.nge.guidance
//
//import android.util.Log
//import android.view.View
//import android.widget.ImageView
//import android.widget.LinearLayout
//import android.widget.TextView
//import com.chad.library.adapter.base.BaseQuickAdapter
//import com.chad.library.adapter.base.viewholder.BaseViewHolder
//import com.zhidaoauto.map.sdk.R
//import com.zhidaoauto.map.sdk.inner.CompileConfig
//import java.text.DecimalFormat
//
//class RouteBookAdapter : BaseQuickAdapter<RouteBookItem, BaseViewHolder>(R.layout.routebook_child_item) {
//
// private val TAG = javaClass.simpleName
//
//
// override fun getDefItemCount(): Int {
// return super.getDefItemCount()
// }
//
// override fun convert(helper: BaseViewHolder, item: RouteBookItem) {
// if (CompileConfig.DEBUG) {
// Log.i(TAG, "routebookop--helper.adapterPosition:${helper.adapterPosition}")
// }
// when (helper.adapterPosition) {
// 0 -> {
// helper.getView<LinearLayout>(R.id.routebook_child_item_info_ll).visibility = View.VISIBLE
// helper.getView<ImageView>(R.id.imgView).setImageResource(NaviDirRes.getResID(501))
// helper.getView<TextView>(R.id.orientation).text = "从${item.routeName?:"起点"}出发"
// helper.getView<TextView>(R.id.length).visibility = View.GONE
// }
// else -> {
// helper.getView<TextView>(R.id.orientation).text = item.routeName
// helper.getView<ImageView>(R.id.imgView).setImageResource(NaviDirRes.getResID(item.turnID))
// if (item.routeName == "目的地") {
// helper.getView<TextView>(R.id.length).visibility = View.GONE
// } else {
// helper.getView<TextView>(R.id.length).visibility = View.VISIBLE
// val i = item.routelength
// if (i > 1000) {
// val df = DecimalFormat("#.0")
// val string = df.format(i.toDouble() / 1000)
// val strs = string.split(".")
// if (strs.size >= 2 && strs[1] == "0") {
// helper.getView<TextView>(R.id.length).text = """继续前行${strs[0]}km${item.routeSpeech}""".trimIndent()
// } else {
// helper.getView<TextView>(R.id.length).text = """继续前行${string}km${item.routeSpeech}""".trimIndent()
// }
// } else {
// helper.getView<TextView>(R.id.length).text = """继续前行${i}m${item.routeSpeech}""".trimIndent()
// }
// }
// }
// }
// }
//}
package com.autonavi.nge.guidance
import android.util.Log
import android.view.View
import android.widget.ImageView
import android.widget.LinearLayout
import android.widget.TextView
import com.chad.library.adapter.base.BaseQuickAdapter
import com.chad.library.adapter.base.viewholder.BaseViewHolder
import com.zhidaoauto.map.sdk.R
import com.zhidaoauto.map.sdk.inner.CompileConfig
import java.text.DecimalFormat
class RouteBookAdapter : BaseQuickAdapter<RouteBookItem, BaseViewHolder>(R.layout.routebook_child_item) {
private val TAG = javaClass.simpleName
override fun getDefItemCount(): Int {
return super.getDefItemCount()
}
override fun convert(helper: BaseViewHolder, item: RouteBookItem) {
if (CompileConfig.DEBUG) {
Log.i(TAG, "routebookop--helper.adapterPosition:${helper.adapterPosition}")
}
when (helper.adapterPosition) {
0 -> {
helper.getView<LinearLayout>(R.id.routebook_child_item_info_ll).visibility = View.VISIBLE
helper.getView<ImageView>(R.id.imgView).setImageResource(NaviDirRes.getResID(501))
helper.getView<TextView>(R.id.orientation).text = "${item.routeName?:"起点"}出发"
helper.getView<TextView>(R.id.length).visibility = View.GONE
}
else -> {
helper.getView<TextView>(R.id.orientation).text = item.routeName
helper.getView<ImageView>(R.id.imgView).setImageResource(NaviDirRes.getResID(item.turnID))
if (item.routeName == "目的地") {
helper.getView<TextView>(R.id.length).visibility = View.GONE
} else {
helper.getView<TextView>(R.id.length).visibility = View.VISIBLE
val i = item.routelength
if (i > 1000) {
val df = DecimalFormat("#.0")
val string = df.format(i.toDouble() / 1000)
val strs = string.split(".")
if (strs.size >= 2 && strs[1] == "0") {
helper.getView<TextView>(R.id.length).text = """继续前行${strs[0]}km${item.routeSpeech}""".trimIndent()
} else {
helper.getView<TextView>(R.id.length).text = """继续前行${string}km${item.routeSpeech}""".trimIndent()
}
} else {
helper.getView<TextView>(R.id.length).text = """继续前行${i}m${item.routeSpeech}""".trimIndent()
}
}
}
}
}
}

View File

@@ -16,6 +16,7 @@ import android.view.MotionEvent
import android.view.SurfaceHolder
import android.view.View
import com.alibaba.fastjson.JSON
import com.zhidaoauto.map.data.point.LonLatPoint
import com.zhidaoauto.map.sdk.inner.CompileConfig
import com.zhidaoauto.map.sdk.inner.CompileConfig.DEBUG
import com.zhidaoauto.map.sdk.inner.abs.IEventController
@@ -34,7 +35,6 @@ import com.zhidaoauto.map.sdk.open.abs.view.IMapStyleParams
import com.zhidaoauto.map.sdk.open.marker.Marker
import com.zhidaoauto.map.sdk.open.marker.MarkerInfo
import com.zhidaoauto.map.sdk.open.marker.MarkerOptions
import com.zhidaoauto.map.sdk.open.query.LonLatPoint
import com.zhidaoauto.map.sdk.open.tools.MapTools
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
@@ -216,7 +216,7 @@ class MapView(context: Context, private val mMapStyleParams: IMapStyleParams, pr
override fun toScreen() {
isScreen = true
isScreen.set(true)
}
override fun setVrMode(isVr: Boolean) {
@@ -606,7 +606,7 @@ class MapView(context: Context, private val mMapStyleParams: IMapStyleParams, pr
}
var snapshotBitmap: Bitmap? = null
var isScreen = false
var isScreen:AtomicBoolean = AtomicBoolean()
private var doubles = doubleArrayOf()
open fun getDoubles(): DoubleArray {
@@ -655,8 +655,8 @@ class MapView(context: Context, private val mMapStyleParams: IMapStyleParams, pr
msg.what = RENDER_CHANGE
msg.arg1 = (System.currentTimeMillis()-time).toInt()
mHandler.sendMessage(msg)
if (isScreen) {
isScreen = false
if (isScreen.get()) {
isScreen.set(false)
snapshotBitmap = createBitmapFromGLSurface(0, 0, width, height, gl)
mEventController?.dispatchScreenShotListener(snapshotBitmap)
}
@@ -897,7 +897,9 @@ class MapView(context: Context, private val mMapStyleParams: IMapStyleParams, pr
val markerInfo = jsonToObj(resultInfo)
if (markerInfo != null) {
var marker: Marker = Marker(MarkerOptions(markerInfo.id,null).setGps(true).position(LonLatPoint(markerInfo.lon, markerInfo.lat)).setAssInfo(markerInfo.assInfo),mMapController,mMarkerCall)
var marker: Marker = Marker(MarkerOptions(markerInfo.id,null).setGps(true).position(
LonLatPoint(markerInfo.lon, markerInfo.lat)
).setAssInfo(markerInfo.assInfo),mMapController,mMarkerCall)
lastClickMarker?.let {
if (!TextUtils.equals(it.getId(), marker.getId())) {
it.hideInfoWindow()