From 718f31c92e2029d05260810435a2c70cef6e6ce5 Mon Sep 17 00:00:00 2001
From: lmw <125975490@qq.com>
Date: 星期四, 24 四月 2025 10:45:55 +0800
Subject: [PATCH] save

---
 app/src/main/java/com/sinata/xqmuse/ui/discovery/PlaceDetailActivity.kt |   29 ++++++++++++++++++++++++-----
 1 files changed, 24 insertions(+), 5 deletions(-)

diff --git a/app/src/main/java/com/sinata/xqmuse/ui/discovery/PlaceDetailActivity.kt b/app/src/main/java/com/sinata/xqmuse/ui/discovery/PlaceDetailActivity.kt
index c01b4af..841da7c 100644
--- a/app/src/main/java/com/sinata/xqmuse/ui/discovery/PlaceDetailActivity.kt
+++ b/app/src/main/java/com/sinata/xqmuse/ui/discovery/PlaceDetailActivity.kt
@@ -4,13 +4,18 @@
 import android.webkit.WebSettings
 import android.webkit.WebViewClient
 import cn.sinata.xldutils.gone
+import cn.sinata.xldutils.utils.showAllowingStateLoss
 import com.google.android.material.appbar.AppBarLayout
 import com.sinata.xqmuse.R
+import com.sinata.xqmuse.dialog.MapTypeDialog
 import com.sinata.xqmuse.network.HttpManager
+import com.sinata.xqmuse.network.entity.Place
 import com.sinata.xqmuse.network.request
 import com.sinata.xqmuse.ui.TransparentStatusBarActivity
 import com.sinata.xqmuse.ui.discovery.adapter.BannerAdapter
 import com.sinata.xqmuse.utils.AppBarStateChangeListener
+import com.sinata.xqmuse.utils.ThirdPartyMapsGuide
+import com.sinata.xqmuse.utils.interfaces.StringCallback
 import com.youth.banner.indicator.CircleIndicator
 import com.youth.banner.indicator.RectangleIndicator
 import com.youth.banner.indicator.RoundLinesIndicator
@@ -27,9 +32,25 @@
     private val bannerAdapter by lazy {
         BannerAdapter(bannerImg, this)
     }
+    private var place:Place? = null
 
     override fun initClick() {
         iv_back.setOnClickListener { finish() }
+        tv_address.setOnClickListener {
+            val mapTypeDialog = MapTypeDialog()
+            mapTypeDialog.callback = object : StringCallback {
+                override fun onResult(rst: String) {
+                    if(rst == "b"){
+                        ThirdPartyMapsGuide.goToBaiduActivity(this@PlaceDetailActivity,place?.hallName,place!!.longitude,place!!.latitude)
+                    }else if (rst == "a"){
+                        ThirdPartyMapsGuide.goToGaoDeMap(this@PlaceDetailActivity,place?.hallName,place!!.longitude.toString(),place!!.latitude.toString())
+                    }else{
+                        ThirdPartyMapsGuide.goToTencentMap(this@PlaceDetailActivity,place?.hallName,place!!.longitude,place!!.latitude)
+                    }
+                }
+            }
+            mapTypeDialog.showAllowingStateLoss(supportFragmentManager,"map")
+        }
     }
 
     override fun initView() {
@@ -71,17 +92,15 @@
 
     private fun getData() {
         HttpManager.getMeditationInfo(id?:"").request(this){_,data->
+            place = data
             data?.apply {
                 bannerImg.clear()
                 bannerImg.addAll(detailBannerUrl.split(",").filter { !it.isNullOrEmpty() })
                 bannerAdapter.notifyDataSetChanged()
-                banner.postDelayed({
-                    banner.isAutoLoop(true)
-                                   banner.start()
-                                   },2000)
+                banner.currentItem = 1
                 tv_name.text = hallName
                 tv_phone.text = contactNumber
-                tv_address.text = address
+                tv_address.text = addressDetail
                 tv_time.text = "营业时间:$businessHours"
                 val sHead =
                     "<html><head><meta name=\"viewport\" content=\"width=device-width, " + "initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes\" />" + "<style>img{max-width:100% !important;height:auto !important;}</style>" + "<style>body{max-width:100% !important;}</style>" + "</head><body>"

--
Gitblit v1.7.1