package com.xianning.driver.ui.main.add_order
|
|
import androidx.recyclerview.widget.LinearLayoutManager
|
import cn.sinata.xldutils.utils.clickDelay
|
import cn.sinata.xldutils.utils.setTextChange
|
import com.baidu.mapapi.search.sug.OnGetSuggestionResultListener
|
import com.baidu.mapapi.search.sug.SuggestionResult
|
|
import com.xianning.driver.R
|
import com.xianning.driver.base.BaseEvent
|
import com.xianning.driver.base.MyBaseActivity
|
import com.xianning.driver.base.gaode.AMapKit
|
import com.xianning.driver.ui.adapter.SearchSitedapter
|
import com.xianning.driver.utils.Cache.CacheKey
|
import kotlinx.android.synthetic.main.activity_search_site.*
|
import org.greenrobot.eventbus.EventBus
|
|
/**
|
* @ClassName SearchSiteActivity
|
* @Description 搜索地点
|
* @Author Administrator
|
* @Date 2020/10/9 10:09
|
* @Version 1.0
|
*/
|
class SearchSiteActivity: MyBaseActivity() {
|
|
var currentCityName:String? = ""
|
|
val siteSearchAdapter by lazy {
|
SearchSitedapter()
|
}
|
|
val type by lazy {
|
intent.getStringExtra("type")?:"1" //1起点 2终点
|
}
|
|
override fun setContentView() {
|
setContentView(R.layout.activity_search_site)
|
}
|
|
override fun initView() {
|
setTitleText("搜索地点")
|
recycler_view_site.layoutManager = LinearLayoutManager(this)
|
recycler_view_site.adapter = siteSearchAdapter
|
siteSearchAdapter.data.addAll(CacheKey.getSiteList(type))
|
siteSearchAdapter.notifyDataSetChanged()
|
}
|
|
override fun setOnclick() {
|
currentCityName = intent.getStringExtra("currentCityName")
|
tv_city_name.text = currentCityName
|
|
tv_search.setTextChange {
|
if (it.isNotEmpty()){
|
AMapKit.searchSite(this,it,currentCityName!!,object : OnGetSuggestionResultListener {
|
override fun onGetSuggestionResult(suggestionResult: SuggestionResult?) {
|
if (suggestionResult != null&&suggestionResult.allSuggestions.isNotEmpty()){
|
siteSearchAdapter.data.clear()
|
siteSearchAdapter.data.addAll(siteSearchAdapter.setDateSite(suggestionResult.allSuggestions))
|
siteSearchAdapter.notifyDataSetChanged()
|
}
|
}
|
|
})
|
}
|
}
|
|
siteSearchAdapter.setOnItemClickListener { view, position ->
|
CacheKey.saveSiteList(siteSearchAdapter.data[position],type)
|
EventBus.getDefault().post(
|
BaseEvent(BaseEvent.SELECT_SEARCH_SITE,siteSearchAdapter.data[position].lat.toString()
|
,siteSearchAdapter.data[position].lng.toString(),siteSearchAdapter.data[position].site+","+siteSearchAdapter.data[position].siteDetail)
|
)
|
finish()
|
}
|
|
tv_cancel.clickDelay {
|
onBackPressed()
|
}
|
|
tv_clear.clickDelay {
|
CacheKey.putKeyStr("searchSite","")
|
siteSearchAdapter.data.clear()
|
siteSearchAdapter.notifyDataSetChanged()
|
}
|
|
}
|
}
|