Commit 6008448e authored by 宋永孟's avatar 宋永孟

add 添加地址搜索页

parent 2049d682
...@@ -82,6 +82,10 @@ ...@@ -82,6 +82,10 @@
android:name=".ui.SelectAddressActivity" android:name=".ui.SelectAddressActivity"
android:theme="@style/Transparent" /> android:theme="@style/Transparent" />
<activity
android:name=".ui.SearchAddActivity"
android:theme="@style/Transparent" />
<activity <activity
android:name=".ui.auth.LifeAccountIdentityActivity" android:name=".ui.auth.LifeAccountIdentityActivity"
android:theme="@style/Transparent" /> android:theme="@style/Transparent" />
......
package com.yidian.shenghuoquan.newscontent.ui
import android.os.Bundle
import com.yidian.common.base.BaseActivity
import com.yidian.shenghuoquan.newscontent.databinding.LayoutActivityServiceProductAddrSearchBinding
/**
* Author: sym
* Date: 2021/6/28 2:55 PM
* Describe:
*/
class SearchAddActivity : BaseActivity<LayoutActivityServiceProductAddrSearchBinding>() {
override fun createViewBinding(): LayoutActivityServiceProductAddrSearchBinding {
return LayoutActivityServiceProductAddrSearchBinding.inflate(layoutInflater)
}
override fun getXPageName(): String {
return ""
}
override fun init(savedInstanceState: Bundle?) {
super.init(savedInstanceState)
viewBind.btnHeaderRight.setOnClickListener {
finish()
}
}
}
package com.yidian.shenghuoquan.newscontent.ui package com.yidian.shenghuoquan.newscontent.ui
import android.content.Intent
import android.location.Location import android.location.Location
import android.os.Bundle import android.os.Bundle
import android.util.Log import android.util.Log
import android.view.View import android.view.View
import android.widget.AdapterView
import android.widget.Toast import android.widget.Toast
import com.amap.api.location.AMapLocation
import com.amap.api.location.AMapLocationClient
import com.amap.api.location.AMapLocationListener
import com.amap.api.maps.AMap import com.amap.api.maps.AMap
import com.amap.api.maps.AMap.OnMyLocationChangeListener import com.amap.api.maps.AMap.OnMyLocationChangeListener
import com.amap.api.maps.MapView import com.amap.api.maps.MapView
...@@ -15,7 +14,6 @@ import com.amap.api.maps.model.* ...@@ -15,7 +14,6 @@ import com.amap.api.maps.model.*
import com.amap.api.services.core.AMapException import com.amap.api.services.core.AMapException
import com.amap.api.services.core.LatLonPoint import com.amap.api.services.core.LatLonPoint
import com.amap.api.services.core.PoiItem import com.amap.api.services.core.PoiItem
import com.amap.api.services.core.SuggestionCity
import com.amap.api.services.poisearch.PoiResult import com.amap.api.services.poisearch.PoiResult
import com.amap.api.services.poisearch.PoiSearch import com.amap.api.services.poisearch.PoiSearch
import com.amap.api.services.poisearch.PoiSearch.OnPoiSearchListener import com.amap.api.services.poisearch.PoiSearch.OnPoiSearchListener
...@@ -53,6 +51,10 @@ class SelectAddressActivity : BaseActivity<ActivitySelectAddressBinding>(), OnMy ...@@ -53,6 +51,10 @@ class SelectAddressActivity : BaseActivity<ActivitySelectAddressBinding>(), OnMy
super.init(savedInstanceState) super.init(savedInstanceState)
mapView = viewBind.map mapView = viewBind.map
viewBind.poiList.adapter = adapter viewBind.poiList.adapter = adapter
viewBind.poiList.onItemClickListener = AdapterView.OnItemClickListener { _, _, p2, _ ->
Toast.makeText(this@SelectAddressActivity, p2.toString(), Toast.LENGTH_SHORT).show()
}
mapView.onCreate(savedInstanceState) mapView.onCreate(savedInstanceState)
markerView = layoutInflater.inflate(R.layout.layout_service_addr_map_marker, null) markerView = layoutInflater.inflate(R.layout.layout_service_addr_map_marker, null)
...@@ -71,7 +73,7 @@ class SelectAddressActivity : BaseActivity<ActivitySelectAddressBinding>(), OnMy ...@@ -71,7 +73,7 @@ class SelectAddressActivity : BaseActivity<ActivitySelectAddressBinding>(), OnMy
finish() finish()
} }
viewBind.selectAddSearchText.setOnClickListener { viewBind.selectAddSearchText.setOnClickListener {
Toast.makeText(this@SelectAddressActivity, "SelectAddressActivity", Toast.LENGTH_SHORT).show() startActivity(Intent(this@SelectAddressActivity, SearchAddActivity::class.java))
} }
} }
...@@ -111,7 +113,7 @@ class SelectAddressActivity : BaseActivity<ActivitySelectAddressBinding>(), OnMy ...@@ -111,7 +113,7 @@ class SelectAddressActivity : BaseActivity<ActivitySelectAddressBinding>(), OnMy
// 定位回调监听 // 定位回调监听
if (location != null) { if (location != null) {
Log.e("amap", "onMyLocationChange 定位成功, lat: " + location.getLatitude() + " lon: " + location.getLongitude()) Log.e("amap", "onMyLocationChange 定位成功, lat: " + location.getLatitude() + " lon: " + location.getLongitude())
val bundle: Bundle = location.getExtras() val bundle: Bundle = location.extras
if (bundle != null) { if (bundle != null) {
val errorCode = bundle.getInt(MyLocationStyle.ERROR_CODE) val errorCode = bundle.getInt(MyLocationStyle.ERROR_CODE)
val errorInfo = bundle.getString(MyLocationStyle.ERROR_INFO) val errorInfo = bundle.getString(MyLocationStyle.ERROR_INFO)
...@@ -163,7 +165,7 @@ class SelectAddressActivity : BaseActivity<ActivitySelectAddressBinding>(), OnMy ...@@ -163,7 +165,7 @@ class SelectAddressActivity : BaseActivity<ActivitySelectAddressBinding>(), OnMy
"金融保险服务|公司企业|道路附属设施|地名地址信息|公共设施" "金融保险服务|公司企业|道路附属设施|地名地址信息|公共设施"
val query: PoiSearch.Query = PoiSearch.Query("", typeRange, "") val query: PoiSearch.Query = PoiSearch.Query("", typeRange, "")
query.pageSize = 10 // 设置每页最多返回多少条poiitem query.pageSize = 1000 // 设置每页最多返回多少条poiitem,一次加载全部
query.pageNum = 1 //设置查第一页 query.pageNum = 1 //设置查第一页
val poiSearch = PoiSearch(this, query) val poiSearch = PoiSearch(this, query)
poiSearch.bound = PoiSearch.SearchBound(LatLonPoint(latLng.latitude, poiSearch.bound = PoiSearch.SearchBound(LatLonPoint(latLng.latitude,
...@@ -176,18 +178,13 @@ class SelectAddressActivity : BaseActivity<ActivitySelectAddressBinding>(), OnMy ...@@ -176,18 +178,13 @@ class SelectAddressActivity : BaseActivity<ActivitySelectAddressBinding>(), OnMy
//poi搜索结束 //poi搜索结束
override fun onPoiSearched(poiResult: PoiResult?, rCode: Int) { override fun onPoiSearched(poiResult: PoiResult?, rCode: Int) {
if (rCode == AMapException.CODE_AMAP_SUCCESS) { if (rCode == AMapException.CODE_AMAP_SUCCESS) {
if (poiResult != null && poiResult.getQuery() != null) { if (poiResult?.query != null) {
// 取得搜索到的poiitems有多少页 val poiItems: List<PoiItem> = poiResult.pois // 取得第一页的poiitem数据,页数从数字0开始
val poiItems: List<PoiItem> = poiResult.getPois() // 取得第一页的poiitem数据,页数从数字0开始 if (poiItems != null && poiItems.isNotEmpty()) {
val suggestionCities: List<SuggestionCity> = poiResult
.getSearchSuggestionCitys() // 当搜索不到poiitem数据时,会返回含有搜索关键字的城市信息
if (poiItems != null && poiItems.size > 0) {
adapter.setData(poiItems) adapter.setData(poiItems)
} }
} }
} }
} }
override fun onPoiItemSearched(p0: PoiItem?, p1: Int) { override fun onPoiItemSearched(p0: PoiItem?, p1: Int) {
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="7.5dp" />
<solid android:color="#b2ffffff" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:fitsSystemWindows="true"
android:layout_height="match_parent"
>
<RelativeLayout
android:id="@+id/search_container"
android:layout_width="match_parent"
android:layout_height="48dp"
android:paddingLeft="15dp">
<TextView
android:id="@+id/btn_header_right"
android:layout_alignParentRight="true"
android:layout_marginRight="15dp"
android:layout_centerVertical="true"
android:textSize="17sp"
android:textStyle="bold"
android:text="取消"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<EditText
android:id="@+id/et_laspas_search_key"
android:layout_width="match_parent"
android:layout_height="33dp"
android:layout_centerVertical="true"
android:layout_toLeftOf="@id/btn_header_right"
android:background="@drawable/et_search_bg_home"
android:gravity="center_vertical"
android:hint="输入街道、小区、大厦名称"
android:imeOptions="actionSearch"
android:paddingLeft="30dp"
android:layout_marginRight="15dp"
android:textSize="12sp"
android:singleLine="true"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:src="@drawable/icon_search" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#f2f2f2" />
</LinearLayout>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment