Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
p x
MapMultiEngine
Commits
9554a195
Commit
9554a195
authored
Oct 27, 2025
by
p x
Browse files
1
parent
ec6a5728
Changes
4
Hide whitespace changes
Inline
Side-by-side
app/build.gradle.kts
View file @
9554a195
...
@@ -55,7 +55,7 @@ dependencies {
...
@@ -55,7 +55,7 @@ dependencies {
androidTestImplementation
(
libs
.
androidx
.
junit
)
androidTestImplementation
(
libs
.
androidx
.
junit
)
androidTestImplementation
(
libs
.
androidx
.
espresso
.
core
)
androidTestImplementation
(
libs
.
androidx
.
espresso
.
core
)
implementation
(
project
(
":mapapi"
))
api
(
project
(
":mapapi"
))
implementation
(
"com.google.code.gson:gson:2.12.0"
)
implementation
(
"com.google.code.gson:gson:2.12.0"
)
// ViewModel ktx
// ViewModel ktx
implementation
(
"androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2"
)
implementation
(
"androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2"
)
...
...
app/src/main/java/com/sd/demo/adapter/PoiAdapter.kt
View file @
9554a195
package
com.sd.demo.adapter
package
com.sd.demo.adapter
//import kotlinx.android.synthetic.main.poi_search_list_item.view.*
//import kotlinx.android.synthetic.main.poi_search_list_item.view.*
import
android.content.Context
import
android.content.Context
import
android.graphics.Color
import
android.graphics.Color
import
android.text.SpannableString
import
android.text.SpannableString
...
@@ -10,14 +11,13 @@ import android.view.ViewGroup
...
@@ -10,14 +11,13 @@ import android.view.ViewGroup
import
androidx.core.text.set
import
androidx.core.text.set
import
androidx.recyclerview.widget.RecyclerView
import
androidx.recyclerview.widget.RecyclerView
import
com.chad.library.adapter4.BaseQuickAdapter
import
com.chad.library.adapter4.BaseQuickAdapter
import
com.minedata.minenavi.addons.DistanceBean
import
com.sd.api.maps.MSCalcuMapUtil
import
com.sd.api.maps.cdata.MSLatLng
import
com.sd.api.maps.cdata.PoiSearchRes
import
com.sd.api.maps.cdata.PoiSearchRes
import
com.sd.demo.utils.MyGeoTools
import
com.sd.demo.databinding.PoiSearchListItemBinding
import
com.sd.demo.databinding.PoiSearchListItemBinding
class
PoiAdapter
:
BaseQuickAdapter
<
PoiSearchRes
,
PoiAdapter
.
PoiSH
>()
{
class
PoiAdapter
:
BaseQuickAdapter
<
PoiSearchRes
,
PoiAdapter
.
PoiSH
>()
{
init
{
init
{
// addChildClickViewIds(R.id.tv_fouc)
// addChildClickViewIds(R.id.tv_fouc)
...
@@ -59,13 +59,11 @@ class PoiAdapter : BaseQuickAdapter<PoiSearchRes, PoiAdapter.PoiSH>() {
...
@@ -59,13 +59,11 @@ class PoiAdapter : BaseQuickAdapter<PoiSearchRes, PoiAdapter.PoiSH>() {
binding
.
poiDes
.
text
=
bean
.
snippet
binding
.
poiDes
.
text
=
bean
.
snippet
// binding.tvDistan.text=bean.distance.toString()
// binding.tvDistan.text=bean.distance.toString()
if
(
bean
.
distance
==
0
){
// 计算2点距离
val
distanceBean
:
DistanceBean
=
MyGeoTools
.
cauMyLocDistance
(
0.0
,
0.0
,
bean
.
lat
,
bean
.
lng
)
var
latLng1
=
MSLatLng
(
39.787678
,
116.518766
)
binding
.
tvDistan
.
text
=
"${distanceBean.distanceValue}${distanceBean.distanceUnit}"
var
latLng2
=
MSLatLng
(
bean
.
lat
,
bean
.
lng
)
}
else
{
var
dis
=
MSCalcuMapUtil
.
calculateLineDistance
(
latLng1
,
latLng2
)
binding
.
tvDistan
.
text
=
"${bean.distance}米"
binding
.
tvDistan
.
text
=
"${dis}米"
}
}
}
fun
setListener
()
{
fun
setListener
()
{
...
...
app/src/main/java/com/sd/demo/ui/CalculateDistanceActivity.kt
View file @
9554a195
...
@@ -29,12 +29,18 @@ class CalculateDistanceActivity : AppCompatActivity() {
...
@@ -29,12 +29,18 @@ class CalculateDistanceActivity : AppCompatActivity() {
//计算2点距离
//计算2点距离
binding
.
bt1
.
setOnClickListener
{
binding
.
bt1
.
setOnClickListener
{
var
latLng1
=
MSLatLng
(
binding
.
et1
.
text
.
toString
().
toDouble
(),
binding
.
et2
.
text
.
toString
().
toDouble
())
var
latLng1
=
MSLatLng
(
var
latLng2
=
MSLatLng
(
binding
.
et3
.
text
.
toString
().
toDouble
(),
binding
.
et4
.
text
.
toString
().
toDouble
())
binding
.
et1
.
text
.
toString
().
toDouble
(),
binding
.
et2
.
text
.
toString
().
toDouble
()
)
var
latLng2
=
MSLatLng
(
binding
.
et3
.
text
.
toString
().
toDouble
(),
binding
.
et4
.
text
.
toString
().
toDouble
()
)
// 计算2点距离
// 计算2点距离
var
dis
=
MSCalcuMapUtil
.
calculateLineDistance
(
latLng1
,
latLng2
)
var
dis
=
MSCalcuMapUtil
.
calculateLineDistance
(
latLng1
,
latLng2
)
println
(
"----计算2点距离 = ${dis}米"
)
println
(
"----计算2点距离 = ${dis}米"
)
ToastHelper
.
showShort
(
this
@CalculateDistanceActivity
,
"距离= ${dis}米"
)
ToastHelper
.
showShort
(
this
@CalculateDistanceActivity
,
"距离= ${dis}米"
)
}
}
}
}
...
...
app/src/main/java/com/sd/demo/utils/MyGeoTools.kt
deleted
100644 → 0
View file @
ec6a5728
package
com.sd.demo.utils
import
android.location.Location
import
com.minedata.minenavi.addons.DistanceBean
object
MyGeoTools
{
/**
* 计算我的位置到目标的直线距离
* @param flat 起点纬度
* @param flng 起点经度
* @param lat 目标点纬度
* @param lng 目标点经度
* @return 距离信息对象,包含格式化后的距离数据
*/
fun
cauMyLocDistance
(
flat
:
Double
,
flng
:
Double
,
lat
:
Double
,
lng
:
Double
):
DistanceBean
{
if
(
flng
==
0.0
||
flng
==
0.0
)
{
return
DistanceBean
(
"0"
,
""
)
}
var
mUtils
=
Utils
()
var
results
=
FloatArray
(
1
)
// 使用Android Location API计算两点间直线距离
Location
.
distanceBetween
(
flat
,
flng
,
lat
,
lng
,
results
)
var
distanceInMeters
=
results
[
0
]
// 将距离转换为整数并格式化为距离对象
val
distanceBean
:
DistanceBean
=
mUtils
.
formatDistance
(
distanceInMeters
.
toInt
(),
false
)
return
distanceBean
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment