首页 > 学院 > 开发设计 > 正文

高德地图地理逆编码,以及如何去掉城省,市,镇

2019-11-09 16:57:40
字体:
来源:转载
供稿:网友
1、首先初始化地理逆编码,在onCreate或onCreateView()方法中/** * 初始化地理逆编码 */PRivate void initGeocoderSearch() {    geocoderSearch = new GeocodeSearch(mContext);    geocoderSearch.setOnGeocodeSearchListener(this);}2、将经纬度传进入(其实是纬经度 )/** * 响应逆地理编码 */public void getAddress(final LatLonPoint latLonPoint) {    RegeocodeQuery query = new RegeocodeQuery(latLonPoint200,            GeocodeSearch.AMAP);// 第一个参数表示一个Latlng,第二参数表示范围多少米,第三个参数表示是火系坐标系还是GPS原生坐标系    geocoderSearch.getFromLocationAsyn(query);// 设置异步逆地理编码请求}3、在逆地理编码回调中截取/** * 逆地理编码回调 */@Overridepublic void onRegeocodeSearched(RegeocodeResult result, int rCode) {    if (rCode == 1000) {        if (result != null && result.getRegeocodeAddress() != null                && result.getRegeocodeAddress().getFormatAddress() != null) {            addressName = result.getRegeocodeAddress().getFormatAddress();            String province = result.getRegeocodeAddress().getProvince();            String township = result.getRegeocodeAddress().getTownship();            addressName = addressName.replace(province, "").replace(township, "");            mTvCarAddress.setText(addressName);        }    } else {        mTvCarAddress.setText("未知地址");    }}注:其中getProvince()得到的是省,getTownship()得到的是镇,通过getRegeocodeAddress().getFormatAddress()得到的地址太长可以使用replace方法截取代码如下:addressName = result.getRegeocodeAddress().getFormatAddress();String province = result.getRegeocodeAddress().getProvince();String township = result.getRegeocodeAddress().getTownship();addressName = addressName.replace(province, "").replace(township, "");这样得到的地址就是不包含省和镇的地址
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表